`
gwshuai
  • 浏览: 56522 次
  • 来自: ...
文章分类
社区版块
存档分类
最新评论

Streaming API for XML (StAX) 简介

阅读更多

         引用: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

    `stax-api.jar`是Java中用于处理XML流的STAX(Streaming API for XML)的API接口库,它提供了与XML数据交互的一套标准化接口。 STAX(Streaming API for XML)是一种低级别的XML解析方法,相比DOM(Document Object...

    stax-api 1.0.1

    STAX(Streaming API for XML)是Java平台上的一个XML处理API,它提供了对XML文档的事件驱动解析。与DOM(Document Object Model)不同,STAX不是加载整个XML文档到内存中形成一个树形结构,而是通过事件(如开始...

    stax-api-1.0.1、stax2-api-3.1.1、woodstox-core-asl-4.1.1

    STAX(Streaming API for XML)是一种用于处理XML的Java API,它提供了事件驱动的解析方式,使得开发者可以高效地读取和写入XML文档。在Java世界中,STAX提供了比DOM(Document Object Model)更高效的处理XML的方式...

    stax2-api-4.2.1.jar

    用来解析XML文件的jar包。Streaming API for XML (StAX) 的基于事件迭代器 API 无论在性能还是在可用性上都有其他 XML 处理方法所不及的独到之处。使用前请先解压

    Streaming APIs for XML Parsers -White Paper 2005.pdf

    StAX是Streaming APIs for XML的缩写,它是一种标准化的Java基础API,用于拉式解析XML。与传统的SAX迭代和DOM树模型不同,StAX优化了速度和性能,特别适用于处理大型或复杂的数据流,而不会显著增加内存负担。 ####...

    stax-api-1.0.1 java 操作 xml 文件 一个很好用的包

    STAX(Streaming API for XML)是Java平台上的一个XML处理API,它提供了高效且灵活的方式来读取和写入XML文档。STAX的核心理念是事件驱动,即解析XML时,每遇到一个XML元素或属性,都会触发一个相应的事件,程序通过...

    stax2-api:Stax扩展API,Java拉解析API(针对Xml的Streaming Api)

    Stax2 API是标准 API(“用于Xml处理的STandard Api”)的扩展,它是JDK 6中添加的JDK的pull-parser API。 地位 支持 Stax2 API通过以下Stax XML实现来本地实现: (面向性能,也是非阻塞/异步的) (Java平台上...

    stax2-api-3.1.1-sources.jar

    stax2-api-3.1.1-sources.jar文件,下载使用,用来解析XML文件的jar包。Streaming API for XML (StAX) 的基于事件迭代器 API 无论在性能还是在可用性上都有其他 XML 处理方法所不及的独到之处。

    stax-api-1.0-2

    STAX,全称为Streaming API for XML,是一种用于处理XML的Java API。STAX提供了一种流式处理XML文档的方法,与DOM(Document Object Model)相比,它更加高效且内存占用更低。在“stax-api-1.0-2”这个版本中,我们...

    java使用stax技术操作XML文档.doc

    Streaming API for XML (StAX) 是Java中处理XML的一种高效且灵活的标准,相较于DOM和SAX,它在性能和易用性上有显著优势。StAX是JSR-173的一部分,于2004年3月发布,最终被纳入JAXP 1.4,也将在Java 6中得到支持。 ...

    java xml 4 种 解析xml 方法 sax jdom dom stAX

    为了处理XML文档,Java提供了多种解析方法,包括SAX(Simple API for XML)、JDOM(Java Document Object Model)、DOM(Document Object Model)以及stAX(Streaming API for XML)。下面将详细介绍这四种解析XML的...

    kettle转换xml(XML Input Stream (StAX))

    StAX(Streaming API for XML)是Java平台上的一个API,它提供了一种低级别的XML解析方式,允许程序以事件驱动的方式处理XML文档,从而提高了处理大型XML文件的性能。 在Kettle中,XML Input Stream (StAX) 转换...

    stax+jaxb进行xml解析

    在Java中,有多种方法可以解析XML,其中StAX(Streaming API for XML)和JAXB(Java Architecture for XML Binding)是两种常用的技术。本篇文章将详细探讨如何结合StAX和JAXB进行高效的XML解析。 StAX是一种事件...

    java_xml_api,java操作XML文档

    5. StAX(Streaming API for XML) StAX是介于SAX和DOM之间的解析方式,它也采用事件驱动,但允许开发者通过迭代器按需读取XML流,从而平衡了内存使用和灵活性。 6. XML Schema和DTD XML Schema和Document Type ...

    java Stax 解析xml

    Java提供了多种解析XML的技术,包括DOM(Document Object Model)、SAX(Simple API for XML)以及本文将详细介绍的StAX(Streaming API for XML)。StAX是一种基于事件驱动的API,适用于大量或流式XML数据的处理。 ...

    stax2-api-3.1.1.jar

    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-开源

    Stack API for XML,也被称为StAX(Streaming API for XML),就是一种为了解决这一问题而诞生的API,它是SAX(Simple API for XML)2.0的扩展,提供了更加方便和灵活的编程模型。 **StAX 基本概念** 1. **事件...

    java xml API

    3. StAX(Streaming API for XML):StAX允许程序通过迭代或推拉模型来读写XML。`javax.xml.stream.XMLInputFactory`和`javax.xml.stream.XMLOutputFactory`是StAX的入口点,分别用于创建XML读取器和写入器。StAX...

    用Stax组装及解析XML

    在处理XML文档时,Java提供了多种工具和技术,包括DOM、SAX以及本文将重点讨论的Streaming API for XML(简称StAX)。StAX是一种用于读取和写入XML数据的事件驱动型API,特别适合于处理大型XML文件或在内存有限的...

Global site tag (gtag.js) - Google Analytics