如何解决,JSONException:没有值为“1”
一直在这个网站上四处寻找,而我没有得到任何地方。
我正在创建一个android应用程序,它通过PHP从mySQL DB获取值列表,并返回在JSON对象中编码的结果:
{"error":false,"values":{"1":{"name":"This is a string"}, "2":{...}}}
我正在检索Java中的JSON对象,如下所示:
JSONObject jObj = new JSONObject(response);
boolean error = jObj.getBoolean("error");
if (!error) {
JSONObject values = jObj.getJSONObject("values");
Iterator<?> keys = values.keys();
while(keys.hasNext()) {
String key = (String)keys.next();
JSONObject value = jObj.getJSONObject(key);
...
}
它在我得到异常的省略号之前:
org.json.JSONException: No value for "1"
我是否在做一些完全愚蠢的事情,或者什么,一切看起来都对我好。 我已经尝试了多种不同的东西,但仍然得到同样的问题。 我最终想要做的是获取名称obj并将其添加到字符串列表。 但我似乎无法超越这一点。
任何帮助或推动正确的方向将不胜感激。
JSONObject value = jObj.getJSONObject(key);
用。。。来代替
JSONObject value = values.getJSONObject(key);
JSONObject jObj = new JSONObject(response);
boolean error = jObj.getBoolean("error");
if (!error) {
JSONObject values = jObj.getJSONObject("values");
Iterator<?> keys = values.keys();
while(keys.hasNext()) {
String key = (String)keys.next();
JSONObject value = values.getJSONObject(key);
...
}
链接地址: http://www.djcxy.com/p/20119.html