Android JSONObject解析问题

Android JSONObject解析问题,android,json,Android,Json,试图使用android JSON对象解析特定响应,但无法生成解析此响应的代码“{“r”:{“f”:[1,0,155948]}” 尝试使用以下代码,但出现错误: “f:{r:{f:[1,0,155948]}}没有值” 代码如下: String abc = "{\"r\":{\"f\":[1,0,15,5948]}}"; JSONObject json = new JSONObject(abc); if (json.has("r")) { Bundle b = new Bundle(); b

试图使用android JSON对象解析特定响应,但无法生成解析此响应的代码“{“r”:{“f”:[1,0,155948]}”

尝试使用以下代码,但出现错误:

“f:{r:{f:[1,0,155948]}}没有值”

代码如下:

String abc = "{\"r\":{\"f\":[1,0,15,5948]}}";

JSONObject json = new JSONObject(abc);

if (json.has("r")) {

Bundle b = new Bundle();

b.putInt("p", json.getJSONArray("f").getInt(0));

b.putInt("s", json.getJSONArray("f").getInt(1));

}
我打算解析上面的响应,并获得各个变量中的值。 比如
b.putInt(“p”,json.getJSONArray(“f”).getInt(0))应在f中获得1:[1….]
等等

有人可以帮助您使用一个工作代码来获取上述响应的值。

“f”
“r”
的子元素,因此您需要像这样访问它:

getJSONObject(“r”)。getJSONArray(“f”)

当您执行以下操作时:

b.putInt(“p”,json.getJSONArray(“f”).getInt(0))

json
变量仍然引用json的根对象。您必须向下遍历一层才能访问字段f

这对我很有用:

String abc = "{\"r\":{\"f\":[1,0,15,5948]}}";
JSONObject json = new JSONObject(abc);
if (json.has("r")) {
    json = json.getJSONObject("r");
    Bundle b = new Bundle();
    b.putInt("p", json.getJSONArray("f").getInt(0));
    b.putInt("s", json.getJSONArray("f").getInt(1));
}
注行:


json=json.getJSONObject(“r”)

谢谢你,斯穆克,我会检查这是否有助于我获取值。