Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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中从inputstream读取json对象?_Java_Json_Servlets - Fatal编程技术网

如何在java中从inputstream读取json对象?

如何在java中从inputstream读取json对象?,java,json,servlets,Java,Json,Servlets,这是示例输入数据。在servlet中,我使用以下过程将inputstream转换为JSONObject { "first": "value", "second": "value", "third": { "fourth": "value", "fifth": "value" } }

这是示例输入数据。在servlet中,我使用以下过程将inputstream转换为JSONObject

{
  "first": "value",
  "second": "value",
  "third": {
     "fourth": "value",
     "fifth": "value"
  }
}
但它没有给出预期的输入数据。输入内容是这样更改的

StringBuilder builder = new StringBuilder();
String line;
BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream()));
while((line = reader.readLine()) != null) {
   builder.append(line);
}
JSONObject content = new JSONObject(builder.toString());

有人能帮我解决这个问题吗?

既然JSON是一种基于文本的格式,而且您似乎在试图解析它之前从inputstream中读取了整个文本,我想说JSON字符串的源代码已经发生了变化。你能分享一下json是如何生成的吗?看起来您有一个多步骤序列化,它将JSON字符串放入Java对象中,然后这些对象也被序列化,因此JSON字符串被转义。@Thomas,输入JSON不是生成的JSON。我使用restclient调用servlet程序。在这个restclient中,我手动输入输入数据并将其发送到服务器。
{"first": "value", "second": "value", "third": "{\"fourth\": \"value\", \"fifth\": \"value\"}"}