如何在任何时候停止使用SAX解析xml文档?

Dia*_*.Wu 25 java xml sax

我用Sax解析一个大的xml文档,我想在某些条件建立时停止解析文档?怎么做?

Tom*_*Tom 39

创建一个SAXException的特化并抛出它(你不必创建自己的专门化,但这意味着你可以自己专门捕获它并将其他SAXExceptions视为实际错误).

public class MySAXTerminatorException extends SAXException {
    ...
}

public void startElement (String namespaceUri, String localName,
                           String qualifiedName, Attributes attributes)
                        throws SAXException {
    if (someConditionOrOther) {
        throw new MySAXTerminatorException();
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

  • fwiw,这不是什么例外.终止像这样的解析不是错误条件.然而,这是做这个的唯一方法:-( (19认同)
  • 还有其他方法吗?不要使用例外. (2认同)
  • 你为什么不想?这就是为什么设计例外. (2认同)