关于JSON解析,大家都会,现在JSON因为它的数据量小,轻量级等特点,在网络数据交互中,用得越来越多;现在JSON在交互中基乎是无处不在,Anroid端内嵌了JSON解析,但在J2ME下却需要自己添加额外的库文件。
大多的时候我们在做客户端的时候,只是用来解析JSON就完事了。并没有利用它来生成一个JSON数据,有些人熟悉JSON解析,却不熟悉JSON生成。
JSONME是一个被国内高人修改后JSON包,也是开源的。以下就是利用开源的JSONME库来生成一个JSON数据:
- JSONStringer js = new JSONStringer();
- //开始一个文档
- js.object();
- //生成节点
- js.key("version").value(1);
- js.key("host").value("maps.google.com");
- js.key("request_address").value(true);
- js.key("address_language").value(1.0);
- //生成子节点 (这里的subObj1最先添加,反而会放在数组节点的最后一个)
- JSONObject subarrs = new JSONObject();
- subarrs.put("subObj1","42");
- subarrs.put("subObj2",11);
- subarrs.put("subObj3",12.0);
- js.key("aasr").value(subarrs);
- //生成数组 (这里的subArr1最先添加,反而会放在数组节点的最后一个)
- JSONObject subarr = new JSONObject();
- subarr.put("subArr1","42");
- subarr.put("subArr2",11);
- subarr.put("subArr3",12.0);
- JSONArray array = new JSONArray();
- array.put(subarr);
- js.key("cell_towers").value(array);
- //结束生成
- js.endObject();
- System.out.println(">> == ? = " + js.toString());
jsonme下载地址:
点击打开链接