httpclient中的java将HttpEntity转换为字符串的最优雅/正确的方法是什么?
我正在使用Apache httpcomponents Java library获取一个网页。连接后,我得到的结果是一个^{InputStream
,还有一个方法writeTo()
,它写入一个输出流
我想将结果转换为字符串以提取信息。最优雅(安全)的方法是什么
一些可能的解决办法:
- 写入
ByteArrayOutputStream
,然后使用字符串构造函数将这些字节转换为字符串 - 使用InputStreamReader直接读取流,并将其放入StringBuilder
这两种感觉都有点难看。你会推荐你选择其中一个还是其他的
# 1 楼答案
那(伪)呢
在这种情况下,您必须自己处理异常
# 2 楼答案
系统。出来println(EntityUtils.toString(httpResponse.getEntity())
# 3 楼答案
这可能很难看,但我认为这是唯一的办法。您可以使用Commons IO中的IOUtils.toString(),而无需编写自己的代码