解析json之net.sf.json
来源:互联网 发布:单片机与电脑串口通信 编辑:程序博客网 时间:2024/05/16 15:29
下载地址
本次使用版本:http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-1.1/最新版本:http://sourceforge.net/projects/json-lib/files/json-lib/
使用net.sf.json需要导入的包
JSONObject
package com.itlwc.test;import net.sf.json.JSONArray;import net.sf.json.JSONObject;public class Test {public static void main(String[] args) {// 创建JSONObjectJSONObject jsonObject = new JSONObject();jsonObject.put("username", "lwc");jsonObject.put("password", "123");// 打印:1System.out.println(jsonObject);// 增加属性,打印:2jsonObject.element("sex", "男");System.out.println(jsonObject);// 根据key返回,打印:3System.out.println(jsonObject.get("sex"));// 判读输出对象的类型boolean isArray = jsonObject.isArray();boolean isEmpty = jsonObject.isEmpty();boolean isNullObject = jsonObject.isNullObject();// 打印:4System.out.println("是否数组:" + isArray + " 是否空:" + isEmpty + " 是否空对象:"+ isNullObject);// 把JSONArray增加到JSONObject中JSONArray jsonArray = new JSONArray();jsonArray.add(0, "lwc");jsonArray.add(1, "nxj");// 开始增加jsonObject.element("student", jsonArray);// 打印:5System.out.println(jsonObject);}}/*打印结果{"username":"lwc","password":"123"}{"username":"lwc","password":"123","sex":"男"}男是否为数组:false 是否为空:false 是否为空对象:false{"username":"lwc","password":"123","sex":"男","student":["lwc","nxj"]}*/
JSONArray
package com.itlwc.test;import net.sf.json.JSONArray;import net.sf.json.JSONObject;public class Test {public static void main(String[] args) {//创建JSONArrayJSONArray jsonArray = new JSONArray(); jsonArray.add(0, "lwc"); jsonArray.add(1, "nxj"); jsonArray.element("mxj"); //打印:1 System.out.println(jsonArray); //根据下标返回,打印:2 System.out.println(jsonArray.get(0)); //根据下标设置新值,打印:3 jsonArray.set(0, "itlwc"); System.out.println(jsonArray); //把JSONObject放入到JSONArray中 JSONObject jsonObject = new JSONObject();jsonObject.put("username", "lwc");jsonObject.put("password", "123");//开始增加,打印:4jsonArray.add(jsonObject);System.out.println(jsonArray);//遍历,打印:5for(int i=0;i<jsonArray.size();i++){System.out.print(jsonArray.get(i)+"\t");}}}/*打印结果["lwc","nxj","mxj"]lwc["itlwc","nxj","mxj"]["itlwc","nxj","mxj",{"username":"lwc","password":"123"}]itlwcnxjmxj{"username":"lwc","password":"123"}*/
JavaBean与json字符串互转
package com.itlwc.test;import net.sf.json.JSONObject;import com.itlwc.entity.Student;public class Test {public static void main(String[] args) {// JavaBean对象转json字符串Student stu1 = new Student("lwc", "111111");JSONObject jsonObject = JSONObject.fromObject(stu1);System.out.println(jsonObject);// json字符串转JavaBeanString jsondata = "{\"password\":\"111111\",\"username\":\"lwc\"}";JSONObject jsonObject1 = JSONObject.fromObject(jsondata);Student stu2 = (Student) JSONObject.toBean(jsonObject1, Student.class);System.out.println(stu2);}}/*打印结果:{"password":"111111","username":"lwc"}用户: lwc 密码:111111*/
List与json字符串互转
package com.itlwc.test;import java.util.ArrayList;import java.util.List;import net.sf.json.JSONArray;import net.sf.json.JSONObject;import com.itlwc.entity.Student;public class Test {public static void main(String[] args) {// List转json字符串List list = new ArrayList();list.add(new Student("lwc", "111111"));list.add(new Student("nxj", "222222"));JSONArray jsonArray = JSONArray.fromObject(list);System.out.println(jsonArray);// json字符串转ListList list1 = new ArrayList();String jsondata = "[{\"password\":\"111111\",\"username\":\"lwc\"},{\"password\":\"222222\",\"username\":\"nxj\"}]";JSONArray jsonArray1 = JSONArray.fromObject(jsondata);for (int i = 0; i < jsonArray1.size(); i++) {JSONObject jsonObject2 = jsonArray1.getJSONObject(i);Student stu2 = (Student) JSONObject.toBean(jsonObject2,Student.class);list1.add(stu2);}System.out.println(list1);}}/*打印结果:[{"password":"111111","username":"lwc"},{"password":"222222","username":"nxj"}][用户: lwc 密码:111111, 用户: nxj 密码:222222]*/
Map与json字符串互转
package com.itlwc.test;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set;import net.sf.json.JSONObject;import com.itlwc.entity.Student;public class Test {public static void main(String[] args) {// Map转json字符串Map map = new HashMap();map.put("1", new Student("lwc", "111111"));map.put("2", new Student("nxj", "222222"));JSONObject jsonMap = JSONObject.fromObject(map);System.out.println(jsonMap);// json字符串转MapString jsondata = "{\"2\":{\"password\":\"222222\",\"username\":\"nxj\"},\"1\":{\"password\":\"111111\",\"username\":\"lwc\"}}";Map map1 = (Map) JSONObject.fromObject(jsondata);Set set = map1.keySet();Iterator ite = set.iterator();while (ite.hasNext()) {String key = (String) ite.next();JSONObject jsonObject = JSONObject.fromObject(map1.get(key));Student stu = (Student) JSONObject.toBean(jsonObject, Student.class);System.out.println(key + " " + stu);}}}/*打印结果: {"2":{"password":"222222","username":"nxj"},"1":{"password":"111111","username":"lwc"}}2 用户: nxj 密码:2222221 用户: lwc 密码:111111*/
JSONArray与List互转
package com.itlwc.test;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import net.sf.json.JSONArray;import net.sf.json.JsonConfig;import com.itlwc.entity.Student;public class Test {public static void main(String[] args) {//List转型JSONArrayList<Student> list = new ArrayList<Student>(); list.add(new Student("lwc", "111111"));list.add(new Student("nxj", "222222")); JSONArray jsonArray = JSONArray.fromObject(list); System.out.println(jsonArray.toString()); //JSONArray转型ListList<Student> list2 = JSONArray.toList(jsonArray, new Student(), new JsonConfig());Iterator<Student> ite = list2.iterator();while(ite.hasNext()){Student stu =ite.next();System.out.println(stu);}}}/*打印结果[{"password":"111111","username":"lwc"},{"password":"222222","username":"nxj"}]用户: lwc 密码:111111用户: nxj 密码:222222*/
JSONArray与数组互转
package com.itlwc.test;import net.sf.json.JSONArray;public class Test {public static void main(String[] args) {// Java数组转JSONArrayboolean[] boolArray = new boolean[] { true, false, true };JSONArray jsonArray = JSONArray.fromObject(boolArray);System.out.println(jsonArray.toString());// JSONArray转Java数组Object obj[] = jsonArray.toArray();for (Object o : obj) {System.out.print(o + " ");}}}/*打印结果 :[true,false,true]true false true */
XML与JSON互转
需要导入xom-1.1.jarpackage com.itlwc.test;import net.sf.json.JSON;import net.sf.json.JSONObject;import net.sf.json.xml.XMLSerializer;public class Test {public static void main(String[] args) throws Exception {// XML转JSONString xml = "<root>" + "<name type='type'>zhaipuhong</name>"+ "<gender>male</gender>" + "<birthday>" + "<year>1970</year>"+ "<month>12</month>" + "<day>17</day>" + "</birthday>"+ "</root>";XMLSerializer xmlSerializer = new XMLSerializer();JSON json = xmlSerializer.read(xml);System.out.println(json.toString(2));// JSON转XMLString jsondata = "{\"root\":{" + "\"name\":\"zhaipuhong\","+ "\"gender\":\"male\"," + "\"birthday\":{"+ "\"year\":\"1970\"," + "\"month\":\"12\"," + "\"day\":\"17\""+ "}" + "}" + "}";JSONObject jsonObject = JSONObject.fromObject(jsondata);String xmlstr = new XMLSerializer().write(jsonObject);System.out.println(xmlstr);}}/*打印结果:{ "name": "zhaipuhong", "gender": "male", "birthday": { "year": "1970", "month": "12", "day": "17" }}<?xml version="1.0" encoding="UTF-8"?><o><root class="object"><birthday class="object"><day type="string">17</day><month type="string">12</month><year type="string">1970</year></birthday><gender type="string">male</gender><name type="string">zhaipuhong</name></root></o>*/
9 0
- 解析json之net.sf.json
- JSON的解析之net.sf.json
- 解析json之net.sf.json
- 解析json之net.sf.json
- 解析json之net.sf.json
- JSON net.sf.json
- JSON net.sf.json
- JSON net.sf.json
- JSON net.sf.json
- JSON net.sf.json
- JSON net.sf.json
- json net.sf.json
- JSON net.sf.json
- JSON实现格式之net.sf.json
- java json 格式解析工具包 .net.sf.json
- java中使用net.sf.json对json进行解析
- java中使用net.sf.json对json进行解析
- java中使用net.sf.json对json进行解析
- android调试之adb详解
- 最近的一些笔试面试网站和书籍
- 写JS要注意
- http://blog.csdn.net/hxxiaopei/article/details/1355364
- leetcode 刷题之路 52 Search a 2D Matrix
- 解析json之net.sf.json
- 二叉排序树
- js完美运动框架,想得到的效果基本能做到
- 嘎嘎嘎嘎
- sae的定时执行任务
- ural 1001 Reverse Root 水题
- hdoj 2048 神、上帝以及老天爷(错排问题)
- 2014-8-8-Nbearlite 查询
- 总结自我