【转载】解析XML各种异常

The markup in the document following the root element must be well-formed.

XML是树状结构,一定要有个最外层的标签套住

Invalid byte 1 of 1-byte UTF-8 sequence 异常分析和解决

“org.dom4j.DocumentException: Invalid byte 1 of 1-byte UTF-8 sequence.”异常分析和解决:

分析:

该异常由下面的reader.read(file);语句抛出:

SAXReader reader = new SAXReader();

Document doc = reader.read(file);

产生这个异常的原因是:

所读的xml文件实际是GBK或者其他编码的,而xml内容中却用指定编码为utf-8,所以就报异常了!

解决方法:

在解析XML前,将XML编码为UTF-8。

如:req.setCharacterEncoding("UTF-8");

如:new ByteArrayInputStream(submitDataParam.getBytes("UTF-8"))

Invalid byte 2 of 2-byte UTF-8 sequence 异常分析和解决

原因:

saxReader.read()读取的流中包含中文报错:

解决:

SAXReader saxReader =newSAXReader();

byte[] bytes = requestMsg.getBytes();

InputStream in =newByteArrayInputStream(bytes);

InputStreamReader strInStream =newInputStreamReader(in,"GBK"); //即在读流时指定编码

Document document = saxReader.read(strInStream);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,799评论 18 399
  • 编码问题一直困扰着开发人员,尤其在 Java 中更加明显,因为 Java 是跨平台语言,不同平台之间编码之间的切换...
    x360阅读 7,245评论 1 20
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,288评论 19 139
  • 为什么要编码 不知道大家有没有想过一个问题,那就是为什么要编码?我们能不能不编码?要回答这个问题必须要回到计算机是...
    艾小天儿阅读 17,823评论 0 2
  • 浑浑噩噩,用这个词形容自己,确实有点贬低自己了,但对于现在的自己又很合适。好讨厌现在的自己,心里想着有一番作为,却...
    风枫沨凨阅读 2,767评论 0 0

友情链接更多精彩内容