java解析和拼接json对象

Posted Hello

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java解析和拼接json对象相关的知识,希望对你有一定的参考价值。

  1 /** 
  2 
  3  * @author: helloworlda 
  4 
  5  * @time:2012-1-18  
  6 
  7  * @descript:java拼接和解析json对象    
  8 
  9  * @result:get没测试出来,不知道效率怎么样。 
 10 
 11  */  
 12 
 13 package json;  
 14 
 15 import java.util.ArrayList;  
 16 
 17 import java.util.Iterator;  
 18 
 19 import java.util.List;  
 20 
 21 import net.sf.json.JSONArray;  
 22 
 23 import net.sf.json.JSONObject;  
 24 
 25 /** 
 26 
 27  * 
 28 
 29  */  
 30 
 31 public class TestJson {  
 32 
 33  public static void main(String[] args) {  
 34 
 35   System.out.println("---------------------java拼接json对象----------------------");  
 36 
 37   TestJson ss=new TestJson();  
 38 
 39   ss.viewMagazine();  
 40 
 41   System.out.println("---------------------java解析json对象----------------------");    
 42 
 43   strJsonObj();  
 44 
 45  }  
 46 
 47  /** 
 48 
 49   * 拼json对象 
 50 
 51   */  
 52 
 53  public String viewMagazine(){  
 54 
 55     
 56 
 57   Person person=new Person();    
 58 
 59   person.setBirth("1989-22-11");  
 60 
 61   person.setGrade("07java");  
 62 
 63   person.setName("happ");  
 64 
 65   person.setSex("boy");  
 66 
 67     
 68 
 69   //推荐的杂志的结果集  
 70 
 71   Person person1=new Person();    
 72 
 73   person1.setBirth("1989-22-11");  
 74 
 75   person1.setGrade("07java");  
 76 
 77   person1.setName("helloworlda");  
 78 
 79   person1.setSex("girl");  
 80 
 81    
 82 
 83   List<Person> list=new ArrayList<Person>();  
 84 
 85   list.add(person);  
 86 
 87   list.add(person1);  
 88 
 89    
 90 
 91   JSONObject s=new JSONObject();  
 92 
 93   JSONArray ss=JSONArray.fromObject(list);//构建json数组  
 94 
 95   //往json对象中加值  
 96 
 97   s.put("person", person);//添加对象  
 98 
 99    
100 
101   s.put("personlist", list);//添加数组,list和ss都可以  
102 
103   //s.put("personss", ss);//添加数组,list和ss都可以  
104 
105   s.put("comCount", 3);  
106 
107   System.out.println(s);    
108 
109   return null;   
110 
111  }  
112 
113    
114 
115  /** 
116 
117   * java解析json对象,解析出对象和字符串及数组并遍历出相应的值 
118 
119   */  
120 
121    
122 
123  private static void strJsonObj(){  
124 
125   String json = "{‘name‘: ‘helloworlda‘,‘array‘:[{‘a‘:‘111‘,‘b‘:‘222‘,‘c‘:‘333‘},{‘a‘:‘999‘}],‘address‘:‘111‘,‘people‘:{‘name‘:‘happ‘,‘sex‘:‘girl‘}}";  
126 
127   JSONObject jsonobj=JSONObject.fromObject(json);//将字符串转化成json对象   
128 
129   String name=jsonobj.getString("name");//获取字符串。  
130 
131   JSONArray array=jsonobj.getJSONArray("array");//获取数组  
132 
133   JSONObject obj=jsonobj.getJSONObject("people");//获取对象  
134 
135     
136 
137   System.out.println("===============strJsonObj==================");  
138 
139   System.out.println("jsonobj : "+jsonobj);  
140 
141   System.out.println("array : "+array);  
142 
143   System.out.println("obj : "+obj.getString("name"));  
144 
145     
146 
147   //遍历json对象  
148 
149    Iterator<?> objkey=obj.keys();    
150 
151   while (objkey.hasNext()) {// 遍历JSONObject     
152 
153         String aa2 = (String) objkey.next().toString();     
154 
155        String bb2 = obj.getString(aa2);           
156 
157        System.out.println(aa2+":"+bb2);  
158 
159   }     
160 
161   //遍历数组  
162 
163   for (int i = 0; i < array.size(); i++) {     
164 
165    System.out.println("item "+ i + " :" + array.getString(i));     
166 
167   }  
168 
169  }  
170 
171 }  

 

以上是关于java解析和拼接json对象的主要内容,如果未能解决你的问题,请参考以下文章

解析:JSON 文本没有以数组或对象开头,并且允许未设置片段的选项

java中把json怎么转换成数组

java中把json怎么转换成数组?

ios - Heroku 和 MongoDb 上的自定义解析服务器错误 3080:JSON 文本没有以数组或对象开头,并且允许未设置片段的选项

jsp页面中,如何使用jquery拼接json格式的数据

jsp页面中,如何使用jquery拼接json格式的数据