Android JSON对象

Har*_*M V 5 arrays android json

我有这样的JSON格式

{ "响应":{ "状态":真, "结果": "user_exists"}}

现在我试图检索Status值来做一些逻辑

JSONObject jData = new JSONObject(data);
JSONArray response = jData.getJSONArray("response");
Run Code Online (Sandbox Code Playgroud)

但我收到以下错误

org.json.JSONException:值为org.json.JSONObject的响应中的值{"result":"user_exists","status":true}无法转换为JSONArray

如何从内部和对象中检索对象?

小智 5

response是一个JSONObject,而不是JSONArray.数组对象被这些[]括号包围,对象与正常对象一起{}.(有关更多格式信息,请参阅json.org)

更改

JSONArray response = jData.getJSONArray("response");
Run Code Online (Sandbox Code Playgroud)

JSONObject response = jData.getJSONObject("response");
Run Code Online (Sandbox Code Playgroud)


Hou*_*ine 4

您正在尝试从 a 检索状态属性JSONArray,但是,您的代码中没有任何状态属性JSONArrayJSONArray被包围[],并且JSONObject被包围{}),因此要检索状态值,请尝试以下操作:

JSONObject jData = new JSONObject(data);
JSONObject response = jData.getJSONObject("response");

boolean status = response.getBoolean("status");
Run Code Online (Sandbox Code Playgroud)