java操作Json資料

來源:互聯網
上載者:User

標籤:object   return   public   java   

最近要使用java來操作Json資料,雖然Json用過幾次,但一直沒有好好總結,趁這次來總結一下java操作Json資料。Java操作Json有很多工具包,地址為http://www.json.org/,可以自己上去挑選。

     這裡我使用第一個org.json,最新源碼地址為:https://github.com/douglascrockford/JSON-java,可以自己去下載,我也會在附件上傳。下載源碼後放進工程即可,包名為org.json


我們要操作的Json資料如下:

{"total":2,"class":"二年級","members":[{"age":18,"name":"李小紅","score":95},{"age":28,"name":"王尼瑪","score":85}]}


  我們先用CreateJson()方法產生Json資料,然後把所有屬性都解析出來。

  1. package Myclass;  

  2.   

  3. import org.json.JSONArray;  

  4. import org.json.JSONObject;  

  5.   

  6. public class Test {  

  7.   

  8.     public static void main(String[] args) {  

  9.         //解析Json--傳入Json字串  

  10.         JSONObject my_json=new JSONObject(CreateJson());          

  11.         int total=my_json.getInt("total");  

  12.         System.out.println("總數為:"+total);       

  13.           

  14.         String class_name=my_json.getString("class");  

  15.         System.out.println("班級為:"+class_name);  

  16.           

  17.         JSONArray members=my_json.getJSONArray("members");  

  18.         for(int i=0;i<members.length();i++)  

  19.         {  

  20.             JSONObject member=(JSONObject)members.get(i);  

  21.             System.out.println("姓名:"+member.getString("name")+" 年齡:"+member.getInt("age")  

  22.                     +" 成績:"+member.getInt("score"));  

  23.         }  

  24.           

  25.     }  

  26.       

  27.     public static String CreateJson()  

  28.     {  

  29.         JSONObject my_json=new JSONObject();  

  30.         my_json.put("class", "二年級");  

  31.         my_json.put("total", 2);  

  32.       

  33.         JSONArray members=new JSONArray();  

  34.         //第一個同學  

  35.         JSONObject member1=new JSONObject();  

  36.         member1.put("name", "李小紅");  

  37.         member1.put("age", 18);  

  38.         member1.put("score", 95);  

  39.         members.put(member1);  

  40.         //第二個同學  

  41.         JSONObject member2=new JSONObject();  

  42.         member2.put("name", "王尼瑪");  

  43.         member2.put("age", 28);  

  44.         member2.put("score", 85);  

  45.         members.put(member2);         

  46.         my_json.put("members", members);  

  47.           

  48.         return my_json.toString();  

  49.     }  

  50.   

  51. }  

複製代碼

運行結果為:


java操作Json資料

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.