【发布时间】:2012-01-10 01:04:25
【问题描述】:
我正在使用 android 的 SAX 解析器,我希望在读取 N 个元素后停止处理。有些提要非常大,可能需要一段时间才能完成。如果某个元素的 EndElementListener 中满足某些条件,如何停止解析?这是我目前的听众
chanItem.setEndElementListener(new EndElementListener() {
public void end() {
_items.add(_item);
if (++_currentItem == _maxElements) {
//BREAK OUT HERE
}
}
});
我尝试在 end() 中抛出异常,但 EndElementListener 不允许抛出任何异常。 非常感谢您的指导。
【问题讨论】:
-
它实际上不是 Nick - 如果你看一下你会发现我的有点不同,因为它使用了 android.sax 解析器。我不能在 EndElementListener 中抛出异常,因为接口不支持它。
-
啊,我的错,我没有看正确的。那时我不确定,很抱歉造成混乱。尽管没有标记答案,但已在另一个问题上对此进行了讨论。 stackoverflow.com/q/3508635/965648
-
这让尼克很困惑,根本不用担心......我只是更喜欢 android.sax 解析器使用 ElementListeners 的方式,所以我想继续使用它,假设我可以得到这个工作..
标签: java android xml sax saxparser