我正在编写一个小应用程序,它根据http POST中的一些变量从Web服务器检索一些html。返回的HTML数据中有一个<pre>
部分,其中一些单词使用换行符和制表符很好地间隔开,但我的应用程序却没有收到它们。代码如下
HttpPost post = new HttpPost("REMOVED FOR PRIVACY");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
//REMOVED FOR PRIVACY
post.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpClient.execute(post, httpContext);
String htmlBrief = inputStreamToString(response.getEntity().getContent()).toString();
return htmlBrief;
}
我认为可能是我通过像这样的
这样的BufferedReader来读取响应private StringBuilder inputStreamToString(InputStream is) throws IOException {
int c;
StringBuilder total = new StringBuilder();
// Wrap a BufferedReader around the InputStream
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
// Read response until the endIndex
while ((c = rd.read()) != -1) {
total.append((char)c);
}
// Return full string
return total;
}
我认为这可能是因为我在缓冲读卡器中逐行阅读,所以我一次切换到一个字符,但它没有帮助解决问题。
非常感谢任何帮助。
谢谢,Ben