2017-08-04 5 views
-9
{ 
    "status":true, 
    "data":{ 
     "events":{ 
     "0":{ 
      "ID":"1827", 
      "event_year":"2017", 
      "event_month":"Jul", 
      "event_day":"13" 
     }, 
     "1":{ 
      "ID":"1772", 
      "event_year":"2017", 
      "event_month":"Jul", 
      "event_day":"16" 
     } 
     } 
    } 
} 

私はアンドロイドで解析できません。 0,1シーケンスが私にそれを解析するのに問題を引き起こしています。AndroidでJSON解析でIDを取得する方法

+0

使用 'Iterator'あなたのJSONオブジェクトです。 – Piyush

+0

コードを共有してください。 – Rashed

+0

この回答を確認してください:https://stackoverflow.com/a/7304091/5402482 –

答えて

1

private void parseJson(JSONObject data) { 

    if (data != null) { 
     Iterator<String> it = data.keys(); 
     while (it.hasNext()) { 
      String key = it.next(); 
      try { 
       if (data.get(key) instanceof JSONArray) { 
        JSONArray arry = data.getJSONArray(key); 
        int size = arry.length(); 
        for (int i = 0; i < size; i++) { 
         parseJson(arry.getJSONObject(i)); 
        } 
       } else if (data.get(key) instanceof JSONObject) { 
        parseJson(data.getJSONObject(key)); 
       } else { 
        System.out.println(key + ":" + data.getString(key)); 
       } 
      } catch (Throwable e) { 
       try { 
        System.out.println(key + ":" + data.getString(key)); 
       } catch (Exception ee) { 
       } 
       e.printStackTrace(); 

      } 
     } 
    } 
} 
0

responseこのダイナミックなJSONパーサーを試してみてくださいは、文字列に

JSONObject object = new JSONObject(response); 
JSONObject data = object.getJSONObject("data"); 
JSONObject events = data.getJSONObject("events"); 

//JSON Object with name 0 
JSONObject zeroObj = events.getJSONObject("0"); 

//JSON Object with name 1 
JSONObject oneObj = events.getJSONObject("1"); 
関連する問題