我正在经历this tutorial我注意到 startElement 方法被调用了两次,但我没有看到任何方法调用...它似乎是自动发生的...你能向我解释一下这个方法是如何调用的吗?
最佳答案
当解析器对象到达对象的开头时,将调用回调方法。 例如,要使用 SAX 解析器解析 xml 文件,您将拥有:
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser saxParser = spf.newSAXParser();
saxParser.parse(new File(sourceFile), this);
其中“this”指的是实现ContentHandler接口(interface)的当前类。我们重写诸如 startElement 之类的回调方法,当您的 saxParser 读取某些事件时,它们将被调用。
另请参阅this page如果有兴趣的话,可以了解回调函数。
关于java - 用java解析xml时调用startElement方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22658818/