Java将此字符串转换为JSONArray

Java将此字符串转换为JSONArray,java,json,string,converter,arrays,Java,Json,String,Converter,Arrays,我从服务器获得以下String响应: {"fid":"1272","uri":"http://someurl/services/file/1272"} 我需要将其转换为JSONArray。有什么帮助吗 顺便说一句,我试过这个,但它不起作用: String response=getResponseFromServer(); JSONArray array = new JSONArray(response); 我得到一个错误: org.json.JSONException: Value {"fi

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

如果您在StackOverflow上搜索JSONArray的Java字符串,您应该会得到以下答案:


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

String response=getResponseFromServer();
JSONObject jsonObject = new JSONObject(response);
在此之后,您可以使用将JSONObject转换为JSONArray(给定一个键字符串数组):

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

你试过什么吗?您使用的是JSON库吗?这是一个JSON对象,不是JSON数组。它是一个Java字符串,还不是JSON对象。他在做Java,而不是Javascript。我的字符串不是
JSONArray
构造函数所接受的格式。好的,那么请看@keelar在这种情况下的回答。OP还没有
JSONArray
,问题中的JSON字符串表示
JSONObject
而不是
JSONArray
。好的。谢谢
JSONObject
对我来说是新事物。没问题,不客气。这就是stackoverflow的作用:)
String[] names = JSONObject.getNames(jsonObject);
JSONArray jsonArray = jsonObject.toJSONArray(new JSONArray(names));