2015-10-07 2 views
0
{ 
    "hits": [ 
    { 
     "name": "Google", 
     "results": [ 
     { 
      "count": 27495 
     } 
     ] 
    }, 
    { 
     "name": "Yahoo", 
     "results": [ 
     { 
      "count": 17707 
     } 
     ] 
    } 
} 

Я могу прочитать имя и результаты из приведенного выше json по приведенному ниже коду, но не смог распечатать только значение счета от JSON.Как извлечь массив из JSON внутри массива JSON

JSONObject jsonObject = (JSONObject) jsonParser.parse(reader); 
if(null!=jsonObject.get("hits")) 
{ 
    System.out.println("Inside IF..."); 
    JSONArray ja = (JSONArray) jsonObject.get("hits"); 
    for(int i=0;i<ja.size() ; i++) 
    { 
     System.out.println("Inside FOR..."); 
     JSONObject tempJsonObj = (JSONObject) ja.get(i); 
     System.out.println(tempJsonObj.get("name").toString()); 
     System.out.println(tempJsonObj.get("results").toString()); 
    } 
} 

Как извлечь массив JSON в массив JSON

+0

Возможные дубликата [Анализировать JSON массив] (http://stackoverflow.com/questions/854028/parse-json-array) – Mohit

+0

HTTP: // StackOverflow .com/a/31019989/3126639 – Waqar

ответ

2

Подобно тому, как вы разобран для космического JSONArray (хитов). Выполните то же самое для внутренней ("Результаты"):

JSONObject jsonObject = (JSONObject) jsonParser.parse(reader); 
    if(null!=jsonObject.get("hits")) 
    { 
     System.out.println("Inside IF..."); 
     JSONArray ja = (JSONArray) jsonObject.get("hits"); 
     for(int i=0;i<ja.size() ; i++) 
     { 
      System.out.println("Inside FOR..."); 
      JSONObject tempJsonObj = (JSONObject) ja.get(i); 
      System.out.println(tempJsonObj.get("name").toString()); 
      System.out.println(tempJsonObj.get("results").toString()); 
     JSONArray innerarray = (JSONArray) tempJsonObj.get("results"); 
    for(int i=0;i<innerarray.size() ; i++) 
    { 
    JSONObject tempJsoninnerObj = (JSONObject) innerarray.get(i); 
      System.out.println(tempJsoninnerObj.get("count").toString()); 
    } 


     } 
    } 
+0

Это не работает. Получение исключения с нулевым указателем. – user952977

+0

@ user952977 попробуйте сейчас – WannaBeGeek

+1

Это работает спасибо. Я сделал глупую ошибку .. :) – user952977

Смежные вопросы