Java 将字符串转换为JSONArray(或任何数组)
我正在尝试将以下值参数解析为JSONArray或任何其他数组:Java 将字符串转换为JSONArray(或任何数组),java,json,arraylist,Java,Json,Arraylist,我正在尝试将以下值参数解析为JSONArray或任何其他数组: "value":"[{\"fileName\":\"Instructions.docx\",\"filePath\":\"http://someserver/api/files/somefilereference1\"},{\"fileName\":\"Sailing plan.docx\",\"filePath\":\"http://someservert/api/files/somefilereference2\"}]" 如您
"value":"[{\"fileName\":\"Instructions.docx\",\"filePath\":\"http://someserver/api/files/somefilereference1\"},{\"fileName\":\"Sailing plan.docx\",\"filePath\":\"http://someservert/api/files/somefilereference2\"}]"
如您所见,我将值作为字符串而不是实际数组获取。我如何解析这个
我尝试将其解析为JSONObject和JSONArray,但没有成功
有什么建议吗?啊-我发现这让人觉得很愚蠢:
可能的副本不是有效的JSON,因此无法使用JSON解析器对其进行解析。将其修复为有效的JSON,例如用{}环绕。或者去掉前导值:和尾随值。更好的是,修复生成文本的代码,这样它就可以生成有效的JSON。我无法访问生成响应的代码,但我用提供的答案修复了它。这是一个解决办法,但工作@宪兵-我不认为这与引用的问题是重复的,因为这与转换为可以解析的格式有关。请将您的POJO类放在这里,以便我们可以编写正确解析此JSON字符串所需的代码
String clean = propertyObject.getString("value").replaceAll("\\\\", "");
JSONArray docArray = new JSONArray(clean);