Android中使用SAX解析XML文件
本文由发表于7年前 | Android | 暂无评论 |  被围观 4,643 views+

首先先大概说一下什么是SAX

SAX是一个用于处理XML事件驱动的“推”模型,虽然它不是W3C标准,但它却是一个得到了广泛认可的API。SAX解析器不像DOM那样建立一个完整的文档树,而是在读取文档时激活一系列事件,这些事件被推给事件处理器,然后由事件处理器提供对文档内容的访问。

使用SAX解析XML文件具有以下特点:

逐行扫描,一边扫描,一边解析,比DOM节省内存空间,操作稍微复杂
Simple API for XML,既是指一种接口,也是指一个软件包
作为接口,SAX是事件驱动型XML解析的一个标准接口

SAX的常用接口为ContentHandler

以下是常用的SAX解析XML文件的步骤,使用ContentHandler的实现类DefaultHandler:

① 首先创建一个类继承DefaultHandler,重写以下方法:

characters(char[] ch, int start, int length)
endDocument()
endElement(String uri, String localName, String qName)
startDocument()
startElement(String uri, String localName, String qName, Attributes attributes)
public class
DefaultHandler
extends Object
implements ContentHandler DTDHandler EntityResolver ErrorHandler

② 在Activity中创建XMLReader,并对输入的inputString字符串进行解析:

//创建一个SAXParserFactory
SAXParserFactory factory = SAXParserFactory.newInstance();
XMLReader reader = factory.newSAXParser().getXMLReader();
//为XMLReader设置内容处理器
reader.setContentHandler(new MyContentHandler());
//开始解析文件
reader.parse(new InputSource(new StringReader(inputString)));

(特别说明:本文部分内容是在观看marschen的Android视频教程时做的笔记,感谢marschen推出的视频教程,这里也推荐给大家:http://www.marschen.com/portal.php)

除了文章中有特别说明,均为IT宅原创文章,转载请以链接形式注明出处。
本文链接:http://www.itzhai.com/android-xml-files-using-sax-parsing.html
关键字: , ,
arthinking 指弹吉他 && 技术 more
分享到:
 
2011 7/12
文章评论
    没有评论
给我留言

有人回复时邮件通知我
Android的相关文章
随机文章 本月热门 热评
1 Spring与Struts2整合的两种解决方案 2011/5/23
2 使用TFTP备份还原交换机中的配置文件 2011/4/15
3 一些常用的音乐英语词汇 2012/10/22
4 【转】让你的 Node.js 应用跑得更快的 10 个技巧 2014/8/31
5 8251A查询法收发数据的通信程序 2011/4/27
6 Android工程目录结构的说明 创建工程 AndroidManifest.xml 2011/7/12
友情推荐 更多
破博客 文官洗碗安天下,武将打怪定乾坤。多么美好的年代,思之令人泪落。
行知-追寻技术之美 关注大数据,分布式系统
我爱编程 编程成长轨迹
Cynthia's Blog 学习笔记 知识总结 思考感悟
 
猜您喜欢
欢迎关注我的公众号 IT宅
关于IT宅 文章归档

IT宅中的文章除了标题注明转载或有特别说明的文章,均为IT宅的技术知识总结,学习笔记或随笔。如果喜欢,请使用文章下面提供的分享组件。转载请注明出处并加入文章的原链接。 感谢大家的支持。

联系我们:admin@itzhai.com

Theme by arthinking. Copyright © 2011-2015 IT宅.com 保留所有权利.