1

1)我有一个 JSON 文件:

{
  "serverURI":"http://localhost:8080/PocketUNI_API/serverURLs",
  "newsURI":"http://localhost:8080/gateway/rss/rss.xml",
  "modulesURI":"http://localhost:8080/PocketUNI_API/modules"
}

2) 我需要在 Java 客户端上以字符串格式获取 URL。

String json = jsonReceiver.makeHttpRequest(URL_SERVER, "GET", params);
JSONArray uris = new JSONArray(json);

Receiver 工作正常,json 显示接收到的正确字符串,但是当它使用 JSONArray 解析时会引发错误

org.json.JSONException: Value {"serverURI":"http:\/\/192.168.0.... of type org.json.JSONObject cannot be converted to JSONArray. 

问题:如何用 URL 值解析 json?

4

4 回答 4

1

你得到的不是一个JSONArray,而是一个JSONObject

JSONObject uris = new JSONObject(json);
于 2013-04-09T14:15:59.810 回答
1

json是 json 对象而不是数组,这就是您收到错误的原因。数组将被 in[和包裹],而对象在{and}中。

JSONObject uris = new JSONObject (json);
于 2013-04-09T14:16:10.443 回答
0

而不是JSONArray你必须使用JSONObject.

JSONObject uris = new JSONObject(json);
于 2013-04-09T14:17:08.647 回答
0

在您的代码中,只需将 JSONArray 替换为 JSONobject

JSONObject uris = new JSONObject(json);
于 2013-04-09T14:17:28.250 回答