关于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下载地址:
点击打开链接