我有一个像这样的xml是一个有效的xml。现在如果我使用SaxParser解析它,它会完美验证。
<A>
<B>
<C>
<D/>
</C>
<C>
<D/>
</c>
</B>
</A>
考虑下一个结构不健全且无效的xml(&lt; / C&gt;缺失)。此时将抛出SaxParserException。但我需要编写一个捕获此异常的代码并继续验证此xml中的下一组标记。
<A>
<B>
<C>
<D/>
<C>
<D/>
</c>
</B>
</A>
有谁知道如何从它捕获异常
的位置继续验证xml答案 0 :(得分:2)
通常情况下,这是不可能的,也是不可能的。在第二个例子中,我们不知道,实际上缺少什么:它是第一个<C>
之后的一个结束标记(1)还是第二个<C>
之后的(2),我们是否也有(3)如果其中一个<C>
代码实际上是<C>
,那么许多标记会打开<C />
吗?纠正文档结构的方法太多了。
无论如何,sourceforge上有一个名为xmlunit的项目,其中包含TolerantSaxDocumentBuilder
声称能够处理缺少的开始和结束标记的项目。它可能已经解决了您的实际问题或。至少它指向了正确的方向:你需要一个自定义sax解析器来实现所需的行为。