我正在使用HttpClient向应该返回 xml 数据的服务器发送请求。此数据作为分块数据返回。然后我试图将接收到的 xml 数据写入文件。我使用的代码如下所示:
HttpEntity entity = response.getEntity();
InputStream instream = entity.getContent();
try {
// do something useful
InputStreamReader isr = new InputStreamReader(instream);
FileWriter pw;
pw = new FileWriter(filename, append);
OutputStreamWriter outWriter = new OutputStreamWriter(new FileOutputStream(filename, append), "UTF-8");
BufferedReader rd = new BufferedReader(isr);
String line = "";
while ((line = rd.readLine()) != null) {
// pw.write(line);
outWriter.write(line);
}
isr.close();
pw.close();
} finally {
instream.close();
}
这会导致将如下所示的数据打印到文件中:
此代码适用于非分块数据。如何使用 HttpClient 正确处理分块数据响应。任何帮助是极大的赞赏。