Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.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 如何将从Http请求接收到的数据放入数组?_Java_Post - Fatal编程技术网

Java 如何将从Http请求接收到的数据放入数组?

Java 如何将从Http请求接收到的数据放入数组?,java,post,Java,Post,我需要将post请求数据插入数组。我将获得三组JSON信息,并希望将每个JSON结果插入一个字符串数组中。这是我目前使用的代码 URL url = new URL("http://localhost:9090/service.php"); URLConnection conn = url.openConnection(); conn.setDoOutput(true); OutputStreamWriter writer = new OutputStreamWriter(conn.getOutp

我需要将post请求数据插入数组。我将获得三组JSON信息,并希望将每个JSON结果插入一个字符串数组中。这是我目前使用的代码

URL url = new URL("http://localhost:9090/service.php");
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuffer response = new StringBuffer();
int i = 0;
ArrayList<String> arr = new ArrayList<String>();
while ((line = reader.readLine()) != null) {
        response.append(line);
        arr.add(response.toString());
        System.out.println(arr.get(i));
        i++;
    }
此代码输出如下:

abc
abcdef
abcdefghi
但我需要像输入一样的输出。

移动

StringBuffer response = new StringBuffer();

到“while”块的第一行

更改arr.addresponse.toString;到arr.addline;它可以工作。

您还没有重新初始化StringBuffer变量响应。此外,您实际上不需要使用StringBuffer,因为您没有操作字符串信息。我建议您尝试以下方法,但在某些情况下您可能不想使用localhost:

URL url = new URL("http://localhost:9090/service.php");
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
int i = 0;
ArrayList<String> arr = new ArrayList<String>();
while ((line = reader.readLine()) != null) {
   arr.add(line);
   // debug information
   System.out.println(arr.get(i));
   i++;
}
URL url = new URL("http://localhost:9090/service.php");
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
int i = 0;
ArrayList<String> arr = new ArrayList<String>();
while ((line = reader.readLine()) != null) {
   arr.add(line);
   // debug information
   System.out.println(arr.get(i));
   i++;
}