Java将此字符串转换为JSONArray

我从服务器获得以下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 

如果您正在讨论在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)); 

如果您在StackOverflow for Java String to JSONArray上进行搜索,您应该得到以下答案: 从JSONArray转换为String然后再返回

 JSONArray jArray; String s = jArray.toString(); // basically what you have ;) JSONArray newJArray = new JSONArray(s);