StAX XML Parser没有转义单引号(')

时间:2011-02-28 11:34:26

标签: java xml parsing

我们正在使用StAX解析器来读取大型XML文件并剥离一些元素/属性并编写XML文件

源XML文件是有效的XML文件,即所有XML特殊字符(<>'"&)都已转义为相应的XML版本(&lt;&gt;&apos;&quot;&amp;

当StaX解析器在输出文件中写入这些特殊字符时,它会转义<>&个字符,但不会转义'"字符,即在输出文件中,我们可以看到'"个字符,尽管输入文件有其转义版本

在将输出发送到StaX解析器String.replaceAll("'","&apos;")方法之前,我尝试使用writeAttribute方法替换

但是当StAX解析器已经转义&lt;,&gt;,&amp;输出显示为&amp;apos;

的字符

你能让我知道在StAX解析器API中是否有任何配置/实用性来解决StAX解析器中的这个问题?

或者,或者,使用另一种解决此问题的XML编写器工具的任何其他建议?

1 个答案:

答案 0 :(得分:4)

如果单引号出现在由单引号括起的属性值中,则只需要对其进行转义。除此之外没有任何理由逃脱它们。