Android上的XML

Android上的XML

一、Android xml的主要用处为以下两点:

1、将xml的信息读出来,比如天气预报,从网上获取的是xml文件,通过xml解析可以把天气状态读出来。
详细介绍:XML经常用作Internet上的一种数据格式。如果您希望通过Internet 访问数据,则数据很有可能是XML 格式。如果您希望发送数据给Web 服务,那么您可能也需要发送XML。简而言之,如果您的Android应用程序将利用Internet,那么您可能需要使用XML

2、保存你的数据,比如做个旅游网站,你需要把全国各个省、城市名称写到xml文件,或者写成json进行保存,在程序中通过解析读取调用。

二、解析方法

常见的解析xml的方式有一下三种:SAXPullDom解析方式

几种解析技术的比较与总结: 

对于Android的移动设备而言,因为设备的资源比较宝贵,内存是有限的,所以我们需要选择适合的技术来解析XML,这样有利于提高访问的速度。

DOM在处理XML文件时,将XML文件解析成树状结构并放入内存中进行处理。当XML文件较小时,我们可以选DOM,因为它简单、直观。

SAX则是以事件作为解析XML文件的模式,它将XML文件转化成一系列的事件,由不同的事件处理器来决定如何处理。XML文件较大时,选择SAX技术是比较合理的。虽然代码量有些大,但是它不需要将所有的XML文件加载到内存中。这样对于有限的Android内存更有效,而且Android提供了一种传统的SAX使用方法以及一个便捷的SAX包装器。 使用AndroidutilXml类,从示例中可以看出,会比使用 SAX来得简单。

XML pull解析并未像SAX解析那样监听元素的结束,而是在开始处完成了大部分处理。这有利于提早读取XML文件,可以极大的减少解析时间,这种优化对于连接速度较漫的移动设备而言尤为重要。对于XML文档较大但只需要文档的一部分时,XML Pull解析器则是更为有效的方法。

三、pull解析

PULL 的工作原理:

XML pull提供了开始元素和结束元素。当某个元素开始时,可以调用parsernextTextXML文档中提取所有字符数据。当解析到一个文档结束时,自动生成EndDocument事件。

Pull XML的步骤:

采用事件驱动进行解析的,当pull解析器,开始解析之后,我们可以调用它的next()方法,来获取下一个解析事件(就是开始文档,结束文档,开始标签,结束标签),当处于某个元素时可以调用XmlPullParsergetAttributte()方法来获取属性的值,也可调用它的nextText()获取本节点的值


常用的XML pull的接口和类:

XmlPullParser:该解析器是一个在org.xmlpull.v1中定义的解析功能的接口。

XmlSerializer:它是一个接口,定义了XML信息集的序列。

XmlPullParserFactory:这个类用于在XMPULL V1 API中创建XML Pull解析器。

XmlPullParserException:抛出单一的XML pull解析器相关的错误。

PULL解析器的运行方式和SAX类似,都是基于事件的模式。

不同的是,在PULL解析过程中返回的是数字,且我们需要自己获取产生的事件然后做相应的操作,而不像SAX那样由处理器触发一种事件的方法,执行我们的代码。

读取到xml的声明返回 START_DOCUMENT 结束返回 END_DOCUMENT 开始标签返回 START_TAG;结束标签返回 END_TAG 文本返回 TEXT

四、常用术语

XML 解析器常用缩略语

API:应用程序编程接口(Application programming interface

RSSReally Simple Syndication

SDK:软件开发包(Software Developers Kit

UI:用户界面(User interface

URL:通用资源定位符(Universal Resource Locator

XML:可扩展标记语言(Extensible Markup Language

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值