1. 程式人生 > >JSONObject和JSONArray區別及基本用法

JSONObject和JSONArray區別及基本用法

一、JSONObject和JSONArray的資料表示形式

JSONObject的資料是用 {  } 來表示的,

        例如:   { "id" : "123", "courseID" : "huangt-test", "title" : "提交作業", "content" : null  }  

而JSONArray,顧名思義是由JSONObject構成的陣列,用  [ { } , { } , ......  , { } ]  來表示

       例如:   [ {  "id" : "123", "courseID" : "huangt-test", "title" : "提交作業" }  ,  {  "content" : null, "beginTime" : 1398873600000  "endTime" } ] ; 

        表示了包含2個JSONObject的JSONArray。

可以看到一個很明顯的區別,一個用的是 {  }  ,一個最外面用的是 [  ]  ;

二、如何從字串String獲得JSONObject物件和JSONArray物件

          JSONObject  jsonObject  = new JSONObject ( String  str);

         JSONArray jsonArray = new JSONArray(String    str  ) ;

三、如何從JSONArray中獲得JSONObject物件

       大家可以把JSONArray當成一般的陣列來對待,只是獲取的資料內資料的方法不一樣

                   JSONObject   jsonObject = (JSONObject)jsonArray.get(i);

                   JSONObject   jsonObject  =  jsonArray.getJSONObject(i) ;  

  兩者都可。第一種注意轉換 

四、獲取JSON內的資料

      int   jid= jsonObject.getInt ( "id" ) ;    //  這裡的jid得到的資料就是123.

      String  jcourse=jsonObject.getString( " courseID") ;   // 這裡的jcourse得到的資料就是huangt-test.

     Strirng jcourse = jsonObject.get("courseID").toString();

 五、一般地 為鍵值對

                        eg:{  name:"xm", value:"張三"}

                         String jname = null;

                         if(jsonObject.get("name").equals("xm")){

                          jname=jsonObject.get("value").toString();

                        }