java - SAXReader 不重新转义字符

标签 java dom dom4j

我正在使用 dom4j 读取 XML 文件。该文件如下所示:

...
<Field>&#13;&#10; hello, world...</Field>
...

我使用 SAXReader 将文件读取到 Document 中。当我在节点上使用 getText() 时,我获得以下字符串:

\r\n hello, world...

我做了一些处理,然后使用 asXml() 编写另一个文件。但是这些字符没有像原始文件中那样进行转义,这会导致使用该文件的外部系统出现错误。

写入文件时如何转义特殊字符并具有

最佳答案

你不能轻易做到。这些不是“逃避”,而是“角色实体”。它们是 XML 的基本组成部分。 Xerces 对“未解析实体”有一些非常复杂的支持,但我怀疑它是否适用于这些实体,而不是 DTD 中定义的种类。

关于java - SAXReader 不重新转义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2251963/

相关文章:

java - 文档中的 dom4j XML 声明

java - Google Cast 图标不显示

java - 下界通配符

java - 无法在 Java 中导入 Hashtable

javascript - 流畅更换背景图片

javascript - 可以禁用表中的所有字段并设置条件以启用所需的某些字段??

java - 如何将 OutputStream 通过管道传输到 StreamingDataHandler?

javascript - 为什么 .getAttribute 为 data-* 属性返回 null

java - 从节点选择中选择节点

java - 在克隆的 dom4j 对象上使用 Xpath 会产生不同的结果