小编典典

Java将此字符串转换为JSONArray [关闭]

json

在这里很难说出要问什么。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以目前的形式合理地回答。如需帮助澄清此问题以便可以重新打开,
请访问帮助中心

7年前关闭。

String从服务器收到以下响应:

{"fid":"1272","uri":"http://someurl/services/file/1272"}

我需要将其转换为JSONArray。有什么帮助吗?

顺便说一句,我尝试了一下,但它不起作用:

String response=getResponseFromServer();
JSONArray array = new JSONArray(response);

我得到错误:

org.json.JSONException: Value {"fid":"1272","uri":"http://someurl/services/file/1272"} of type org.json.JSONObject cannot be converted to JSONArray

阅读 269

收藏
2020-07-27

共1个答案

小编典典

如果您正在谈论在Java库中使用JSON,那么由于您的输入字符串是JSON对象,而不是JSON数组,因此您应该首先使用JSONObject加载它:

String response=getResponseFromServer();
JSONObject jsonObject = new JSONObject(response);

之后,您可以使用toJSONArray()将给定的键字符串数组将JSONObject转换为JSONArray:

String[] names = JSONObject.getNames(jsonObject);
JSONArray jsonArray = jsonObject.toJSONArray(new JSONArray(names));
2020-07-27