java 生成json与解析

来源:互联网 发布:蚂蚁宝卡 知乎 编辑:程序博客网 时间:2024/04/29 03:27

http://blog.csdn.net/gaogaoshan/article/details/7538904

官网:http://www.json.org/json-zh.html

lib下载:http://sourceforge.net/projects/json-lib/files/

实例:https://github.com/douglascrockford/JSON-java

json.jsp:http://json-taglib.sourceforge.net/

在线校验:http://www.bejson.com/go.html?u=http://www.bejson.com/

其中org.json和json-lib比较简单,两者使用上差不多。下面两段源代码是分别使用这两个工具解析和构造JSON的演示程序。
一、这是使用json-lib的程序: 

[java] view plain copy
  1. import java.util.HashMap;   
  2. import java.util.Map;   
  3.   
  4. import net.sf.json.JSONObject;   
  5.   
  6. public class Test {   
  7.   
  8.     public static void main(String[] args) {   
  9.         String json = "{/"name/":/"reiz/"}";   
  10.         JSONObject jsonObj = JSONObject.fromObject(json);   
  11.         String name = jsonObj.getString("name");   
  12.         
  13.         jsonObj.put("initial", name.substring(01).toUpperCase());   
  14.   
  15.         String[] likes = new String[] { "JavaScript""Skiing""Apple Pie" };   
  16.         jsonObj.put("likes", likes);   
  17.   
  18.         Map <String, String> ingredients = new HashMap <String, String>();   
  19.         ingredients.put("apples""3kg");   
  20.         ingredients.put("sugar""1kg");   
  21.         ingredients.put("pastry""2.4kg");   
  22.         ingredients.put("bestEaten""outdoors");   
  23.         jsonObj.put("ingredients",ingredients);   
  24.         
  25.         System.out.println(jsonObj);   
  26.     }   
  27. }   


二、这是使用org.json的程序:

[java] view plain copy
  1. import java.util.HashMap;   
  2. import java.util.Map;   
  3.   
  4. import org.json.JSONException;   
  5. import org.json.JSONObject;   
  6.   
  7. public class Test {   
  8.   
  9.     public static void main(String[] args) throws JSONException {   
  10.         String json = "{/"name/":/"reiz/"}";   
  11.         JSONObject jsonObj = new JSONObject(json);   
  12.         String name = jsonObj.getString("name");   
  13.   
  14.         jsonObj.put("initial", name.substring(01).toUpperCase());   
  15.   
  16.         String[] likes = new String[] { "JavaScript""Skiing""Apple Pie" };   
  17.         jsonObj.put("likes", likes);   
  18.   
  19.         Map <String, String> ingredients = new HashMap <String, String>();   
  20.         ingredients.put("apples""3kg");   
  21.         ingredients.put("sugar""1kg");   
  22.         ingredients.put("pastry""2.4kg");   
  23.         ingredients.put("bestEaten""outdoors");   
  24.         jsonObj.put("ingredients", ingredients);   
  25.         System.out.println(jsonObj);   
  26.   
  27.         System.out.println(jsonObj);   
  28.     }   
  29. }   


两者的使用几乎是相同的,但org.json比json-lib要轻量得多,前者没有任何依赖,而后者要依赖ezmorph和commons的lang、logging、beanutils、collections等组件。


0 0
原创粉丝点击