引用:http://www.ibm.com/developerworks/cn/xml/x-stax1.html?S_TACT=105AGX52&S_CMP=techcsdn
Streaming API for XML (StAX) 是用 Java™ 语言处理 XML 的最新标准。作为一种面向流的方法,无论从性能还是可用性上都优于其他方法,如 DOM 和 SAX。
StAX 概述
从一开始,Java API for XML Processing (JAXP) 就提供了两种方法来处理 XML:文档对象模型(DOM)方法是用标准的对象模型表示 XML 文档;Simple API for XML (SAX) 方法使用应用程序提供的事件处理程序来处理 XML。JSR-173 提出了一种面向流的新方法:Streaming API for XML (StAX)。其最终版本于 2004 年 3 月发布,并成为了 JAXP 1.4(将包含在即将发布的 Java 6 中)的一部分。
XMLStreamReader 解析 XML 文档的完整例子
XMLInputFactory factory = XMLInputFactory.newInstance();XMLStreamReader r = factory.createXMLStreamReader(input);try { int event = r.getEventType(); while (true) { switch (event) { case XMLStreamConstants.START_DOCUMENT: out.println("Start Document."); break; case XMLStreamConstants.START_ELEMENT: out.println("Start Element: " + r.getName()); for(int i = 0, n = r.getAttributeCount(); i < n; ++i) out.println("Attribute: " + r.getAttributeName(i) + "=" + r.getAttributeValue(i)); break; case XMLStreamConstants.CHARACTERS: if (r.isWhiteSpace()) break; out.println("Text: " + r.getText()); break; case XMLStreamConstants.END_ELEMENT: out.println("End Element:" + r.getName()); break; case XMLStreamConstants.END_DOCUMENT: out.println("End Document."); break; } if (!r.hasNext()) break; event = r.next(); }} finally { r.close();} |
分享到:
相关推荐
`stax-api.jar`是Java中用于处理XML流的STAX(Streaming API for XML)的API接口库,它提供了与XML数据交互的一套标准化接口。 STAX(Streaming API for XML)是一种低级别的XML解析方法,相比DOM(Document Object...
STAX(Streaming API for XML)是Java平台上的一个XML处理API,它提供了对XML文档的事件驱动解析。与DOM(Document Object Model)不同,STAX不是加载整个XML文档到内存中形成一个树形结构,而是通过事件(如开始...
STAX(Streaming API for XML)是一种用于处理XML的Java API,它提供了事件驱动的解析方式,使得开发者可以高效地读取和写入XML文档。在Java世界中,STAX提供了比DOM(Document Object Model)更高效的处理XML的方式...
用来解析XML文件的jar包。Streaming API for XML (StAX) 的基于事件迭代器 API 无论在性能还是在可用性上都有其他 XML 处理方法所不及的独到之处。使用前请先解压
StAX是Streaming APIs for XML的缩写,它是一种标准化的Java基础API,用于拉式解析XML。与传统的SAX迭代和DOM树模型不同,StAX优化了速度和性能,特别适用于处理大型或复杂的数据流,而不会显著增加内存负担。 ####...
STAX(Streaming API for XML)是Java平台上的一个XML处理API,它提供了高效且灵活的方式来读取和写入XML文档。STAX的核心理念是事件驱动,即解析XML时,每遇到一个XML元素或属性,都会触发一个相应的事件,程序通过...
Stax2 API是标准 API(“用于Xml处理的STandard Api”)的扩展,它是JDK 6中添加的JDK的pull-parser API。 地位 支持 Stax2 API通过以下Stax XML实现来本地实现: (面向性能,也是非阻塞/异步的) (Java平台上...
stax2-api-3.1.1-sources.jar文件,下载使用,用来解析XML文件的jar包。Streaming API for XML (StAX) 的基于事件迭代器 API 无论在性能还是在可用性上都有其他 XML 处理方法所不及的独到之处。
STAX,全称为Streaming API for XML,是一种用于处理XML的Java API。STAX提供了一种流式处理XML文档的方法,与DOM(Document Object Model)相比,它更加高效且内存占用更低。在“stax-api-1.0-2”这个版本中,我们...
Streaming API for XML (StAX) 是Java中处理XML的一种高效且灵活的标准,相较于DOM和SAX,它在性能和易用性上有显著优势。StAX是JSR-173的一部分,于2004年3月发布,最终被纳入JAXP 1.4,也将在Java 6中得到支持。 ...
为了处理XML文档,Java提供了多种解析方法,包括SAX(Simple API for XML)、JDOM(Java Document Object Model)、DOM(Document Object Model)以及stAX(Streaming API for XML)。下面将详细介绍这四种解析XML的...
StAX(Streaming API for XML)是Java平台上的一个API,它提供了一种低级别的XML解析方式,允许程序以事件驱动的方式处理XML文档,从而提高了处理大型XML文件的性能。 在Kettle中,XML Input Stream (StAX) 转换...
在Java中,有多种方法可以解析XML,其中StAX(Streaming API for XML)和JAXB(Java Architecture for XML Binding)是两种常用的技术。本篇文章将详细探讨如何结合StAX和JAXB进行高效的XML解析。 StAX是一种事件...
5. StAX(Streaming API for XML) StAX是介于SAX和DOM之间的解析方式,它也采用事件驱动,但允许开发者通过迭代器按需读取XML流,从而平衡了内存使用和灵活性。 6. XML Schema和DTD XML Schema和Document Type ...
Java提供了多种解析XML的技术,包括DOM(Document Object Model)、SAX(Simple API for XML)以及本文将详细介绍的StAX(Streaming API for XML)。StAX是一种基于事件驱动的API,适用于大量或流式XML数据的处理。 ...
Streaming API for XML(StAX)是Java平台上的一个高级XML处理API,它提供了对XML文档的高效、低级别的访问方式。"stax2-api-3.1.1.jar"是一个Java库,主要用于XML解析,特别是采用了StAX 2.0规范的实现。这个jar...
Stack API for XML,也被称为StAX(Streaming API for XML),就是一种为了解决这一问题而诞生的API,它是SAX(Simple API for XML)2.0的扩展,提供了更加方便和灵活的编程模型。 **StAX 基本概念** 1. **事件...
3. StAX(Streaming API for XML):StAX允许程序通过迭代或推拉模型来读写XML。`javax.xml.stream.XMLInputFactory`和`javax.xml.stream.XMLOutputFactory`是StAX的入口点,分别用于创建XML读取器和写入器。StAX...
在处理XML文档时,Java提供了多种工具和技术,包括DOM、SAX以及本文将重点讨论的Streaming API for XML(简称StAX)。StAX是一种用于读取和写入XML数据的事件驱动型API,特别适合于处理大型XML文件或在内存有限的...