JAVA中 JSONObject與JSONArray的使用


一、JAR包

     需引入JSON-lib包,JSON-lib包同時依賴於以下的JAR包:

      1.commons-lang.jar

      2.commons-beanutils.jar

      3.commons-collections.jar

      4.commons-logging.jar 

      5.ezmorph.jar

      6.json-lib-2.2.2-jdk15.jar

二、JSONObject對象使用

//JSONObject對象的創建和數據的添加(key-value方式)
    private static JSONObject createJSONObject(){   
        JSONObject jsonObject = new JSONObject();   
        jsonObject.put("username","天涯草");   
        jsonObject.put("sex", "男");   
        jsonObject.put("QQ", "1");   
        jsonObject.put("Min.score", new Integer(99));   
        jsonObject.put("nickname", "天涯草");   
        return jsonObject;   
    }   

 

public static void main(String[] args) {   
        JSONObject jsonObject = JSONObjectSample.createJSONObject();   
        //輸出jsonobject對象   
        System.out.println("jsonObject==>"+jsonObject);   
           
        //判讀輸出對象的類型   
        boolean isArray = jsonObject.isArray();   
        boolean isEmpty = jsonObject.isEmpty();   
        boolean isNullObject = jsonObject.isNullObject();   
        System.out.println("isArray:"+isArray+" isEmpty:"+isEmpty+" isNullObject:"+isNullObject);   
           
        //添加屬性   
        jsonObject.element("address", "天涯草");   
        System.out.println("添加屬性后的對象==>"+jsonObject);   
           
        //創建一個JSONArray對象並添加數據
        JSONArray jsonArray = new JSONArray();   

        jsonArray.add(0, "this is a jsonArray value");   
        jsonArray.add(1,"another jsonArray value");   

 

       //把jsonArray對象 添加到jsonObject對象
        jsonObject.element("jsonArray", jsonArray);   
        JSONArray array = jsonObject.getJSONArray("jsonArray");   
        System.out.println("返回一個JSONArray對象:"+array);   


        //添加JSONArray后的值   
        // {"username":"天涯草","sex":"男","QQ":"天涯草","Min.score":99,"nickname":"天涯草","address":"天涯草","jsonArray":["this is a jsonArray value","another jsonArray value"]}  
        System.out.println("結果="+jsonObject);   
           
        //jsonObject根據key返回一個字符串   
        String username = jsonObject.getString("username");   
        System.out.println("username==>"+username);  
        
        //把字符與JSONObject的轉換
        String temp=jsonObject.toString();
        JSONObject object = JSONObject.fromObject(temp);
        //轉換后根據Key返回值
        System.out.println("qq="+object.get("QQ"));
        
    }  

三、JSONArray和JSONObject的互相添加

JSONObject jo = new JSONObject();
jo.put("isleaf", true);
jo.put("name", "zhangsan");
jo.put("age", "25");

JSONObject jo2 = new JSONObject();
jo2.put("isleaf", false);
jo2.put("name", "lisi");
jo2.put("age", "25");

(1)//把JSONObject添加到中JSONArray

JSONArray ja0 = new JSONArray();
ja0.add(jo3);

(2)//把JSONArray添加到JSONObject中

jo2.element("children", ja0);
System.out.println(jo2.toString());

 

JSONArray ja1 = new JSONArray();
ja1.add(jo);
ja1.add(jo2);

四、JSONArray 中遍歷 JSONObject

方法一:

JSONArray array = JSONArray.fromObject(data);
for  (Object object : array) {
   JSONObject o = JSONObject.fromObject(object);
     o.get( "name" )
}


方法二:
 

JSONArray array = JSONArray.fromObject(data);
for  (int i = 0; i < array.size(); i++) {
    JSONObject o = array.getJSONObject(i);
    o.get( "name" )
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM