1、使用EntityUtils.toString(HttpEntity, String/Charset) 而不是 EntityUtils.toString()
跟踪 EntityUtil.toString
方法发现,字符集规则如下:
- 首先查看HttpResponse是否制定字符集,若指定,则使用;
- 若未指定,则使用方法入参字符集;
- 若未指定入参字符集,则使用默认字符集,即 ISO-8859-1
此处最好指定字符集,不然会造成莫名其妙的乱码情况!!!
注: 如果使用了springboot 最为项目框架, 则其会默认把所有的字符集改为UTF-8,这种情况下,即使调用
toString
时不指定字符集,也会按照UTF-8处理,但是,能指定还是指定一下比较好,万一情况不允许你使用springboot咋办....