首页 > 解决方案 > 如何在 java 中读取 XML 样式的文本文件?

问题描述

我想阅读下面的Java文本格式的XML文件,

XML 文件:

    <Sample>
     <DATA>
       <ID>12345</ID>
       <NAME>Person1</NAME>
       <MAIL>sa@gmail.com</MAIL>
       <Class>A&B</Class>
    </DATA>
    <DATA>
       <ID>12345</ID>
       <NAME>Person1</NAME>
       <MAIL>sa@gmail.com</MAIL>
       <Class>A<B</Class>
    </DATA>
   </Sample>

我使用 JAXB 来读取这个 xml 文件,为此我也添加了一个带有注释的 POJO 类。在解组 XMl 文件时出现以下异常

[org.xml.sax.SAXParseException : The entity must immediately follow the '&' in the entity reference.]

任何人都可以建议我阅读此 xml 的最佳方法吗?

标签: javadomjaxb

解决方案


请参阅链接- 如错误所述,XML 需要实体引用。您需要使用&amp;, and&gt;来表示大于号。您正在使用的 Saxon 库应正确处理这些 URL 编码的字符。

当 XML 解析器在 XML 数据中找到一个 & 符号时,它希望找到一个符号名称和一个分号。符号名称提供对另一个实体或字符的符号引用,例如与号、大于和小于字符。


推荐阅读