从另一个JSONObject - Android获取ID的JSONObject

And*_*oid 3 android json

我在解析从Web服务器获取的JSON字符串时遇到了一些问题.所以我的JSON看起来像这样:

{
 ..........
"statistics":{
              "660":{
                       "param_id":660,
                       "cat_id":2,
                       "param_title":"Number",
                       "param_value":"26",
                       "value_type":"singleline",
                       "elem_order":"1"}

            ,
              "662":{
                       "param_id":662,
                       "cat_id":2,
                       "param_title":"Name",
                       "param_value":"Dani",
                       "value_type":"singleline",
                       "elem_order":"2"
                    }
                    // --||--
           }
}
Run Code Online (Sandbox Code Playgroud)

所以我得到一个JSONObject statisics,我想从中获取JSONObjects statistics,但问题是他们的名字每次都不同.所以我不能这样做json.getJSONObject("660");.那么任何建议我该怎么做?

And*_*oid 9

你可以这样做:

if(jsonObj.has("statistics")){
   Iterator<Object> keys = stats.keys();
   while(keys.hasNext()){

     String key = (String) keys.next();
     JSONObject obj = new JSONObject();
     obj = stats.getJSONObject(key);
     // get JSON 

  }// end while

}//end if
Run Code Online (Sandbox Code Playgroud)


kin*_*ori 5

使用JSONObject.keys()来获得关键的迭代器,然后getJsonObject( key)让对象.