解析 JSON Android 转换 jsonObject
Parse JSON Android convert jsonObject
我对 JSON 有疑问
我得到一个 json 因为 https://proxyepn-test.epnbn.net/wsapi/epn
但是当我想显示单个数据时,例如"name"。
控制台显示:
日志
org.json.JSONException: No value for Name
org.json.JSONException: Value status at 0 of the type java.lang.String can not be converted to JSONObject
你能帮帮我吗?
谢谢。
这是我的代码:
String test2 = test.execute(restURL).get().toString();
Log.i("result",test2);
JSONObject obj = new JSONObject(test2);
String data = obj.getString("data");
Log.i("testjson",data);
String pageName = obj.getJSONObject("data").getString("Name");
Log.i("testjsondata",pageName);
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
JSONObject obj = new JSONObject(test2);
JSONObject data=obj.getJSONobject("data");
JSONObject ob1=obj.getJSONobject("1");
String pageName = ob1.getString("Name");
尝试以下:
JSONObject obj = new JSONObject(test2);
JSONObject data = obj.getJSONObject("data");
Iterator<String> iterator = data.keys();
while(iterator.hasNext()){
String key = iterator.next();
String Name = data.getString(key);
}
您必须解析下一级 JSONObject(响应中标记为“1”、“2”、“3”..)。
您共享的 Json 响应结构似乎有问题。为什么它不能是 "data" 中的数组?
然后您可以轻松读取 JSONArray 格式的数据,并将这些对象作为 ("1","2","3"..) 数组项。
其他
Android JSON parsing of multiple JSONObjects inside JSONObject
我对 JSON 有疑问 我得到一个 json 因为 https://proxyepn-test.epnbn.net/wsapi/epn
但是当我想显示单个数据时,例如"name"。 控制台显示:
日志
org.json.JSONException: No value for Name
org.json.JSONException: Value status at 0 of the type java.lang.String can not be converted to JSONObject
你能帮帮我吗? 谢谢。
这是我的代码:
String test2 = test.execute(restURL).get().toString();
Log.i("result",test2);
JSONObject obj = new JSONObject(test2);
String data = obj.getString("data");
Log.i("testjson",data);
String pageName = obj.getJSONObject("data").getString("Name");
Log.i("testjsondata",pageName);
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
JSONObject obj = new JSONObject(test2);
JSONObject data=obj.getJSONobject("data");
JSONObject ob1=obj.getJSONobject("1");
String pageName = ob1.getString("Name");
尝试以下:
JSONObject obj = new JSONObject(test2);
JSONObject data = obj.getJSONObject("data");
Iterator<String> iterator = data.keys();
while(iterator.hasNext()){
String key = iterator.next();
String Name = data.getString(key);
}
您必须解析下一级 JSONObject(响应中标记为“1”、“2”、“3”..)。
您共享的 Json 响应结构似乎有问题。为什么它不能是 "data" 中的数组?
然后您可以轻松读取 JSONArray 格式的数据,并将这些对象作为 ("1","2","3"..) 数组项。
其他
Android JSON parsing of multiple JSONObjects inside JSONObject