禁用xml文本内容的解码

时间:2010-01-27 23:15:37

标签: java xml parsing

使用Java解析xml文件时是否可以禁用解码xml文本内容? 例如,"按原样返回,而不是转换为引用

有效地希望将文本内容视为包装在CDATA块中

3 个答案:

答案 0 :(得分:2)

让解析器替换实体然后重新替换后会有什么害处?

答案 1 :(得分:1)

实际上,这将是非常值得怀疑的。毕竟,从XML的角度来看,这两个xml片段完全相同,如果& quot;被定义为“:

<a>&quot;<b></b></a>

<a>"<b/></a>

如果&amp; quot;尚未定义,无论如何第一个输入无效。因此,从意义的角度来看,实际上是要求获取转换,而不是避免转换。

任何看到这些输入之间存在差异的解析器表现为XML解析器。 (并且依赖于看到差异的程序并不真正处理XML,它试图处理具有一些强加结构的文本文件。)

我不确定在任何情况下输出应该是什么。您是否希望Java代码看到值为"&quot;"的文本节点?但是xml的输入应该是&amp;quot;,这也是这样一个文本节点的xml输出。

答案 2 :(得分:0)

kXML 2有选项 expand-entity-ref xml-roundtrip ,可以执行此操作。