溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

JSON解析詳解

發(fā)布時間:2020-09-09 17:15:33 來源:網(wǎng)絡(luò) 閱讀:323 作者:wanghaihuan123 欄目:開發(fā)技術(shù)

1  簡單的一個  { ,,,,}

2  里面有數(shù)組 { , [{,,},{,,}],}  

3 直接一個數(shù)組

4 數(shù)組里有數(shù)組

5 其他情況? 沒有吧,除非json格式不規(guī)范

Android的SDK中包含四個與JSON相關(guān)的類和一個Exceptions:JSONArray、JSONObject、JSONStringer、JSONTokener、JSONException。通過這5個類我們就可以自行對Json進(jìn)行解析(使用很簡單,可以網(wǎng)上搜索使用方法或者參照Android SDK),另外Google在Android的SDK中放入了JsonReader和JsonWriter來方便我們讀寫Json。

 //最簡單 的 直接一個對象

// {"username":"zms",age:23,"addr","from china"};
     String json="{\"username\":\"zms\",\"age\":43,\"addr\":\"江西省高安市村前鎮(zhèn)\"}";
        JSONObject jsonObject2 =new JSONObject(json);
         str="名字:"+jsonObject2.getString("username")+"年薪:"+jsonObject2.getString("age")+jsonObject2.getString("addr")+"\n";

//對象里有數(shù)組

//{"username":"zms",age:11,"jicheng":[{"zhengshu":"PMP","date":"2011年"},{"zhengshu":"信息系統(tǒng)項(xiàng)目管理師","date","2012年"}],"addr":"江西"}
     // 這種也屬于 對象里有數(shù)組   {"json":[{"username":"zms","date":"2011年"},{"username":"ivy","date","2012年"}]}
String json= "{\"username\":\"張木生\",age:11,\"jicheng\":[{\"zhengshu\":\"PMP\",\"date\":\"2011年\"},{\"zhengshu\":\"信息系統(tǒng)項(xiàng)目管理師\",\"date\":\"2012年\"}],\"addr\":\"江西\"}";
      
            JSONObject jsonObject2 =new JSONObject(json);
         str="名字:"+jsonObject2.getString("username");
         str=str+"工齡:"+jsonObject2.getString("age")+"證書:";
         JSONArray jsonArray = jsonObject2.getJSONArray("jicheng"); 
         for (int i=0;i<jsonArray.length();i++)
         {
          JSONObject jsonObjectSon= (JSONObject)jsonArray.opt(i); 
          str=str+jsonObjectSon.getString("zhengshu")+"年份:"+jsonObjectSon.getString("date");
         }
         str=str+"籍貫"+jsonObject2.getString("addr");
          txt1.setText(str);
         Log.v("zms", str);

//直接一個數(shù)組 

str="";
    //  返回的字符串 直接是個數(shù)組
    // [{"devid":"1234567800","latitude":"29.4963","longitude":"116.189"},{"devid":"1234567832","latitude":"29.4943","longitude":"1161.129"}]
 String json="[{\"devid\":\"1234567800\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"devid\":\"1234567832\",\"latitude\":\"29.4943\",\"longitude\":\"1161.129\"}]";
     try {
      JSONArray jsonArray = new JSONArray(json);
      for (int i=0;i<jsonArray.length();i++)
      {
         JSONObject jsonObject2 = (JSONObject)jsonArray.opt(i); 
    str=str+"第"+i+"個,devid:"+jsonObject2.getString("devid")+"維度:"+jsonObject2.getString("latitude")+"經(jīng)度:"+jsonObject2.getString("longitude")+"\n";
        
      }

 //數(shù)組里有數(shù)組

String json="["+
               "{\"devid\":\"1234567800\",\"gps\":[{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\" }],\"devname\":\"贛01\"},"+
               " {\"devid\":\"1234567800\",\"gps\":[{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\" }],\"devname\":\"贛92\"},"+
               " {\"devid\":\"1234567800\",\"gps\":[{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\" }],\"devname\":\"贛43\"}"+
               "]";
       try {
        JSONArray jsonArray = new JSONArray(json);
        for (int i=0;i<jsonArray.length();i++)
        {
          String tpstr="";
           JSONObject jsonObject5 = (JSONObject)jsonArray.opt(i); 
           str=str+"第"+i+"條船,設(shè)備號devid:"+jsonObject5.getString("devid");
           JSONArray jsonArray5 = jsonObject5.getJSONArray("gps"); 
           for (int j=0;j<jsonArray5.length();j++)
           {
            JSONObject jsonOb5Son=(JSONObject)jsonArray5.opt(j);
             tpstr="采集時間:"+jsonOb5Son.getString("time")+"維度"+jsonOb5Son.getString("latitude")+"經(jīng)度:"+jsonOb5Son.getString("longitude");
            
           }
           str=str+tpstr;
       
          
        }

向AI問一下細(xì)節(jié)
推薦閱讀:
  1. JSON解析
  2. json解析之gson

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI