我正在编写一个Java程序来读取XML文件,实际上是一个XML plist格式的iTunes库。
我已经设法绕过了这种格式遇到的大多数障碍,除非遇到包含以下内容的文本:&
。 XML 文件将该 & 符号表示为&
我只能设法阅读下面的文字&
在文本的任何特定部分。
有没有办法禁用转义码检测?我正在使用 SAXParser。
你想做的事情有些可疑。
如果您尝试解析的文件格式包含裸露的&符号(&
) 字符那么它是not格式良好的 XML。 & 符号表示为字符实体(例如&
)在格式良好的 XML 中。
啊,我明白了。 XML 实际上已正确编码,但您没有获得正确的 SO 标记。
看来你真正的问题是你的characters(...)
正在为之前的文本单独调用回调&
,对于(解码的)&
,最后是之后的文本&
。您只需将文本块重新连接在一起即可解决此问题。
javadoc 为ContentHandler.characters()说:
“解析器将调用此方法来报告每个字符数据块。SAX 解析器可能会在单个块中返回所有连续的字符数据,也可能会将其拆分为多个块......”.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)