2016-08-01 107 views
0

我從Firebase得到JSONObject以下。如何從以下類型的JSONObject獲取數據?沒有JSONArray

沒有任何JSONArray的迴應。

我怎樣才能得到所有主要JSONObject與循環。

是低於JSON迴應是有效的?或者我必須轉換成JSONArray
我知道如何獲得內部JSONObject如果有JSONArray

{ 
    "Data": { 
     "inner_data": { 
      "key1": { 
       "chapter": "Chapter 1", 
       "key": "key", 
       "weight": 1 
      }, 
      "key2": { 
       "chapter": "Chapter 2", 
       "key": "-KMa5xai7vMQtaDZ0b31", 
       "weight": 2 
      } 
     } 
    }, 
    "Demo": { 
     "inner_demo": { 
      "key1": { 
       "chapter": "Chapter 1", 
       "key": "key", 
       "weight": 1 
      }, 
      "key2": { 
       "chapter": "Chapter 2", 
       "key": "-KMa5xai7vMQtaDZ0b31", 
       "weight": 2 
      } 
     } 
    }, 
    "Test": { 
     "inner_test1": { 
      "-KMa9JFjKuDNgf313Bzc": { 
       "key": "-KMa9JFjKuDNgf313Bzc", 
       "time": "10:33", 
       "topic": "Circles", 
       "url": "https://www.youtube.com/watch?v=yLVsv9kO5C8", 
       "weight": 1 
      } 
     }, 
     "-inner_test2": { 
      "-KMa95pUP3bKtnoQaPg4": { 
       "key": "-KMa95pUP3bKtnoQaPg4", 
       "time": "15:26", 
       "topic": "Linear Equations in two Variables", 
       "url": "https://www.youtube.com/watch?v=Wpr3tddDw9s", 
       "weight": 1 
      } 
     }, 
     "-inner_test3": { 
      "-KMa8i5mU9HUapf-wGDU": { 
       "key": "-KMa8i5mU9HUapf-wGDU", 
       "time": "05:38", 
       "topic": "Measurement of volumes", 
       "url": "https://www.youtube.com/watch?v=mbFwgu4xx40", 
       "weight": 1 
      } 
     }, 
     "inner_demo_test": { 
      "key1": { 
       "chapter": "Chapter 1", 
       "key": "key", 
       "weight": 1 
      }, 
      "key2": { 
       "chapter": "Chapter 2", 
       "key": "-KMa5xai7vMQtaDZ0b31", 
       "weight": 2 
      } 
     } 
    } 
} 

注意:這只是總響應的10%。

+0

製作Model類,然後獲取對象並根據需要使用它。欲瞭解更多,請參閱http://coderzpassion.com/saving-retrieving-data-firebase-android-part-one/ –

回答

2

您提供的JSON是有效的,如果你知道鍵就可以簡單地說

obj.getJSONObject("key"); 

如果你不知道鍵,你可以使用迭代器

JSONObject j=new JSONObject(); 
    Iterator<String> iterator=j.keys(); 
    while (iterator.hasNext()) 
    { 
     String key=iterator.next(); 
     JSONObject newObj= j.getJSONObject(key); 
    } 

獲取嵌套對象。

+0

讓我試試。我會回來的 。 –