Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Can';t将字符串解析为JSONArray_Java_Json - Fatal编程技术网

Java Can';t将字符串解析为JSONArray

Java Can';t将字符串解析为JSONArray,java,json,Java,Json,我有以下字符串(据我所知)的有效格式 [ { "name":"John Doe" }, { "name":"Jane Doe" } ] 调用以下命令后: return new JSONArray(jsonString); 其中jsonString是上面给出的JSON。我得到以下错误: org.json.JSONException: Value jsonString of type java.lang.String cannot be

我有以下字符串(据我所知)的有效格式

[  
   {  
      "name":"John Doe"
   },
   {  
      "name":"Jane Doe"
   }
]
调用以下命令后:

return new JSONArray(jsonString);
其中
jsonString
是上面给出的JSON。我得到以下错误:

org.json.JSONException: Value jsonString of type java.lang.String cannot be converted to JSONArray
你知道为什么解析器不接受这个字符串吗

编辑


问题已经解决了。数组在JSON输出中编码为字符串。我首先用getString(param)方法检索字符串,而不是直接用getJsonArray转换它,然后将字符串转换为json数组。

json似乎在上有效。但快速浏览一下就会发现问题还有其他可能的根源:

  • 你和我在一起吗
  • 您是否需要为您的项目添加新的内容

    • 问题已经解决了。该数组在完整的JSON输出中被编码为字符串。我首先用getString(param)方法检索字符串,而不是直接用getJsonArray进行转换,然后将字符串转换为json数组。

      如何在Java代码中表示json?换句话说,它是如何从您发布的JSON块变成
      字符串
      变量的?我只是试着把你的JSON放到一个
      字符串中,并转义所有的引号,结果成功了。另外,您使用的是什么版本的
      org.json.json
      ?如果您从文件中读取json,请确保注意文件的编码。我将json表示为json对象。线程中的块是键
      数据
      的字符串值。首先,我将整个JSON块转换为
      JSONObject
      。之后,我尝试通过调用
      getJSONArray(“data”)
      来获取键
      data
      下的数组。字符串已正确转义。能否添加所描述的代码?正如我所说的,这对我来说是可行的,所以我认为将JSON提取到
      字符串中的方式有问题。问题不在于输入JSON。此外,org.json jar版本20160810解析您的输入时不会出现问题。