2017-03-06 64 views
1

我有一个XML文件,其中包含一些无效字符(XML 1.0中不支持字符)。 我想分析这个文件,但是我收到了XML包含无效字符的例外。 是否有任何可能的方法来解析带有无效字符的XML。或跳过包含无效字符的节点属性。用无效字符解析XML

+0

请问如果在XML 1.1模式强制解析器,或改变了XML序言声明文件为1.1 XML(这是怎样的一个黑客攻击它的工作,但一个最容易测试)? – GPI

回答

0

可能的解决方法是将其作为字符串加载并用有效的字符或标记替换无效字符,以便知道它在那里。然后正常解析。

+0

感谢您的回复。XML的大小太大,所以它是一个复杂的程序,我有我的行号,我得到无效的字符,所以有任何w ay修改特定行的内容。 – Shrikant

0

所以你的意思是有字符&,<,>(“或'属性中)?下一个处理阶段的有效数据:

InputStream yourFancyIllegalCharConverter = new YourFancyIllegalCharConverter(realInputStream); 
XMLInputFactory factory = XMLInputFactory.newInstance(); 
XMLStreamReader parser = factory.createXMLStreamReader(yourFancyIllegalCharConverter);