原文:
http://kxml.sourceforge.net/kxml2/
kXML 2 实现了 XmlPull API。要了解关于 XmlPull 解析器及接口说明的信息,请访问
xmlpull.org。
kXML 2 基于 BSD 许可协议。
Naveen Balani 为 IBM 开发者工厂撰写了
一篇很优秀的介绍 kXML 2 的文章。
推荐的调用约定
当传递一个 XMLPull 解析器给子程序的时候,最好确保当前位置在“开始标签(如<element>)”处(以使得子程序能分析标签的属性)。后置条件通常应该是当前的位置是匹配的“结束标签(如</element>)”。
解析纯元素和纯文本内容
可以这样使用 XML Pull API 来解析一般的 XML 内容:用一个循环来推进事件,并用 switch 语句根据事件类型进行处理。然而,当使用 XML 进行数据传输时(相对于文本文档),大多数 XML 元素只包含文本或只包含其他元素(可能有更深层次的子元素)。在这些常见的情况下,可以使用 XmlPull API 的方法
nextTag 和
nextText 来显著地简化解析过程。此外,可以选择性地使用
require() 方法来断言一个确定的解析器状态。下面的范例展示了在一个具体情境下解析器方法的使用。外围元素
elements 拥有纯元素的内容;它包含的
text 元素拥有纯文本的内容:
<elements>
<text>text1</text>
<text>text2</text>
</elements>
解析代码
parser.nextTag();
parser.require(XmlPullParser.START_TAG, null, "elements");
while(parser.nextTag() == XmlPullParser.START_TAG) {
parser.require(XmlPullParser.START_TAG, null, "text");
// 处理元素内容
System.out.println("text content: "+ parser.nextText());
parser.require(XmlPullParser.END_TAG, null, "text");
}
parser.require(XmlPullParser.END_TAG, null, "elements");
nextTag() 使解析器推进到下一个开始标签或结束标签,跳过不重要的事件如:空白字符、注释、处理指令等。
nextText() 要求当前位置是开始标签,会返回相应元素的文本内容。后置条件是当前位置是结束标签。请注意,
require() 调用是可选的,他们可能会被完全忽略掉。
分享到:
相关推荐
为了高效地解析XML文档,开发者通常会使用解析器库,如KXML2和XMLPull。这两个库在Java环境中为XML解析提供了轻量级、高效的解决方案。 KXML2是一个小型、快速且易于使用的XML解析库,适用于Java ME(移动版Java)...
标题中的"kxml2-min-2.3.0.rar"表明这是一个压缩文件,包含了优化过的KXML2库的最小版本2.3.0,而"it_kxml2-2.3.0.jar"标签则直接指向了这个库的jar文件,用于在J2ME项目中导入和使用。 在J2ME开发中,XML处理是...
J2ME 中 KXML2 解析器解析 xml 文件源代码所需要的压缩包 kxml2-min-2.3.0.jar。
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
4. 使用KXML2 API:如果使用KXML2,可以创建一个XmlParser或XmlSerializer对象,通过开始和结束标签的方法(如startTag()和endTag())来解析或生成XML。 5. 处理属性:在元素开始标签事件中,可以使用...
kxml2-2.4.2是用于解析xml文件的。 kXML 2 实现了 XmlPull API。要了解关于 XmlPull 解析器及接口说明的信息,请访问xmlpull.org。 kXML 2 基于 BSD 许可协议。
在Android平台,解析XML的方式多种多样,其中之一就是使用kxml2库。kxml2是一个轻量级、快速的XML解析器,适用于资源有限的设备,如移动设备。本文将深入探讨kxml2-2.2.2.jar这一版本的库,揭示其在XML解析中的重要...
《深入理解KXML2-2.2.2:Android中的Pull解析器》 在移动开发领域,尤其是在Android环境中,XML解析是...通过掌握Pull解析的基本原理和KXML2库的使用,开发者可以更好地优化应用程序的数据处理性能,提高用户体验。
了解这个文件的内容至关重要,因为它定义了我们对kxml2源码的使用范围和限制。 2. `build.xml`:这是Ant构建工具的配置文件,用于自动化编译、测试和打包过程。通过执行Ant命令,开发者可以方便地构建和管理项目。 ...
KXML2是一个基于事件驱动的解析器,它采用了与SAX解析器相似的模式,但简化了API,使其更易于理解和使用。事件驱动意味着在解析XML文档的过程中,解析器会触发一系列事件,如开始元素、结束元素、文本内容等,开发者...
例如,KXML2提供了一个`XmlPullParser`的实现,开发者可以像下面这样使用: ```java XmlPullParser parser = new KXmlParser(); parser.setInput(inputStream, null); int eventType = parser.getEventType(); ...
能够让你快速上手KXML2,要知道j2me平台上的xml解析跟j2ee上的解析是不一样的,小生不才,研究一个下午终于搞定,你不看是你的损失。
J2ME中使用KXML解释XML文件 J2ME中使用KXML解释XML文件
使用KXML2,开发者可以通过XMLPullParser接口解析XML文档,这个接口允许你逐事件地处理XML,例如开始元素、结束元素、文本节点等,从而实现按需读取,避免一次性加载整个XML文档到内存。 接下来是**xmlpull_1_0_5_...
为了学习和使用KXML2,你可能需要查阅其官方文档或在线教程,或者参考其他开发者分享的示例代码来理解如何集成和使用这个库。 总之,KXML2是Java环境中处理XML的一个实用工具,尤其适合处理大文件。通过...
kXML是一个很小的XML解析器,专为在一些有特别限制的环境中使用,如Applets、MIDP等方面。 KXML是一个Enhydra维护的项目,支持下面的性能: · 支持XML名称空间 · 用"松散"模式分析HTML或其它SGML格式 · 占用很少...