![](/img/trans.png)
[英]What is the difference between the StAX Cursor API and Iterator API?
[英]Java Stax Iterator API method implementation
我知道如何利用java stax迭代器api读取xml文档,但是我想了解XMLEvent和XMLEventReader的实现。
XMLInputFactory xmlInFactory = XMLInputFactory.newFactory();
FileInputStream inStream = new FileInputStream(inFileName);
XMLEventReader xmlEventReader = xmlInFactory.createXMLEventReader(inStream);
while(xmlEventReader.hasNext()){
xmlEvent = xmlEventReader.nextEvent();
if(xmlEvent.isStartElement()){
startElement = xmlEvent.asStartElement();
---more code---
}
}
由于XMLEventReader和XMLEvent都是接口,hasNext(),isStartElement()和asStartElement()方法的实现在哪里? 没有JDK中的方法实现,这些方法如何工作? 这种逻辑从何而来?
提前谢谢你的帮助。
由于这些是接口,因此可以有多种实现。 例如,在开发环境中,我有几种XMLEventReader实现可用,例如:
com.sun.xml.stream.XMLEventReaderImpl
org.codehaus.stax2.XMLEventReader2
第一个是Sun pull XML解析器,该解析器分布在JDK中。 第二个是第三方Woodstox解析器的一部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.