2012-07-28 54 views
0

我使用Android的org.json.JSONObject類,它的工作到目前爲止奇妙。但是現在我正在解析一個稍微不同的對象,它給了我一個JSONException: no value for name。但名字肯定存在。Android的JSONObject說「沒有名稱的價值」,當「名稱」項目肯定有

我甚至記錄的的JSONObject的toString(),並且它的存在..這就是:

07-28 17:29:47.281: D/asdf(1639): {"status":"OK","file":{"id":32707990,"icon":"removedforstackoverflow","screenshot":"removedforstackoverflow","name":"Testname123","created_at":"2012-05-23T22:42:55","is_mp4_available":null,"content_type":"application\/x-iso9660-image","is_shared":false,"size":155271168,"parent_id":0}} 

爲什麼說這是不存在的,當它肯定是?我錯過了什麼嗎?

+3

您需要顯示您的代碼。你有一個'JSONObject'包含另一個'JSONObject',它是'file'鍵的'value'。您需要將'value'作爲單獨的'JSONObject'獲得,然後才能獲得「name」鍵的'value'。 – Squonk 2012-07-28 18:10:21

+0

就是這樣。通過將'.getJSONObject(「file」)'添加到我的JSONObject的構造函數來修復它。 – 2012-07-28 18:18:00

回答

3

您可能試圖從根對象獲取名稱。但名稱是存儲在file名稱下的子對象的字段。

String name = root.getJSONObject("file").getString("name"); 
+0

謝謝!你說得對,我正在解析對象_around_文件對象。篡改它'新的JSONObject(字符串).getJSONObject(「文件」)'修復它! – 2012-07-28 18:15:49