日期:2014-05-18  浏览次数:20715 次

dom4j编码问题
本帖最后由 leidazhi 于 2013-09-30 17:05:35 编辑
在使用HttpCore编写的http的客户端(运行在windows7)接收从另外一台机器(Linux)发来的报文时,试图将返回的HttpResponse的HttpEntity解析为xml会出错,错误信息:1 字节的 UTF-8 序列的字节 1 无效。

将输入流转换为string是可以正常显示的。

另外一台linux机器上运行这段代码是没问题的,能够正确解析并显示包含中文的xml报文。

在创建xml的过程中,使用SAXReader的setEncoding设置编码为UTF-8或者GBK或者GB2312也都不能正确解析报文,报错信息:3 字节的 UTF-8 序列的字节 3 无效。

请问这个问题如何解决?先谢谢了
java 编码 utf-8 gbk

------解决方案--------------------
你用的是httpClient的最新版本。你不要把他的内容转成什么字节数组流
直接return new XMLContent("UTF-8",response.getEntity().getContent());