有没有办法使用SAX XML解析器“跳过”一行?
我有一个非确认的XML文档,它是有效XML文档的串联,因此每个文档都会显示<?xml ...?>
。另请注意,我需要使用SAX解析器,因为输入文档很大。
我尝试制作一个“自定义流”类作为解析器的支线,但很快就意识到SAX使用read
方法,从而读取“字节数组”中的内容,从而爆炸了这个项目的复杂性。
谢谢!
更新:我知道使用csplit
可以解决这个问题,但如果可能的话,我会在合理的限制范围内使用基于Python的解决方案。
Update2:也许我应该说“跳到下一个文档”,这会更有意义。无论如何,这就是我需要的:一种从单个输入流解析多个文档的方法。
答案 0 :(得分:0)
当您将文档连接在一起时,只需替换开头&lt;?和?&gt;使用&lt;! - 和 - &gt;,这将注释掉xml声明。