2016-04-03 14 views
0

içinde JSONArray içinden yineleme yapamıyorum JSONArray'daki her JSONObject boyunca yinelemek için aşağıdakileri deniyorum, ancak çalışmıyor. Günlükte JSONArray'in uzunluğunu kontrol ediyorum ve bana doğru uzunluğu veriyor, ancak JSONAbject'in JSONArray öğesinin her öğesinde alamıyorum. Ayrıca, her öğe 8 anahtar/değer çiftiyle bir JSONObject olmalıdır. Herhangi bir geri bildirim büyük takdir, teşekkürler. Kendi bünyesindeAndroid, döngü içi

if (getMyJSONArray() != null) { 

      newJSONArray = getMyJSONArray(); 

      try { 
       // Did this because the JSONArray was inside a JSONArray 
       innerJSONArray = newJSONArray.getJSONArray(0); 

      } catch (JSONException e) { 
       e.printStackTrace(); 
      } 

      if (innerJSONArray != null) { 

       // This gives me the right length 
       Log.i("innerJSONArray.length: ", String.valueOf(innerJSONArray.length())); 

       for (int i = 0; innerJSONArray.length() < 0; i++) { 

        try { 

         // This doesn't work 
         JSONObject jsonObject1 = innerJSONArray.getJSONObject(i); 

         // This doesn't work either 
         JSONObject jsonObject2 = new JSONObject(innerJSONArray.getString(i)); 

      …(more code below to use if the part above works) 

        } catch (JSONException e) { 
         e.printStackTrace(); 
        } 


       } 
      } 

     } 

cevap

0

döngü innerJSONArray.length() < 0; için i < innerJSONArray.length() olmalıdır.

Daha sonra bu hat beklendiği gibi çalışması gerekir:

JSONObject jsonObject1 = innerJSONArray.getJSONObject(i); 
+1

Teşekkür! Buna nasıl baktığımı bilmiyorum. Onu tamir ettim, şimdi çalışıyor. – eaavendano