Android XML 数据解析
XML 英文全称(e X tensible M arkup L anguage),中文为可扩展标记语言
XML 被设计用来传输和存储数据
XML 容易学习和掌握的
<?xml version="1.0" encoding="UTF-8"?> <note> <to>小明</to> <from>小红</from> <heading>短信</heading> <body>I miss you so much</body> </note>
如果你想了解更多 XML 的相关知识,可以访问我们的 XML 基础教程
SAX 、 DOM 、 PULL
Android 为解析 XML 提供了三种方法: SAX
、 DOM
、PULL
-
SAX
对文档进行顺序嫂买哦,当扫描到文档(Document)开始与结束、元素 ( Element ) 开始与结束、内容数据时会通知事件处理器,回调相应的方法,然后继续同样的扫描,直到文档结束SAX
的采用的是流式解析,读到哪里就解析到哪里,优点是速度快,占用内存少缺点是需要为每种 XML 定义一个解析器,如果 XML 文档中类繁多,各不相同,就有点麻烦了
-
DOM
先把文档都读到内存中,生成一个树形结构,然后就可以调用DOM
API 获取数据DOM
采用的是随机方法,它的优点就是写起来快,缺点就是如果文件过大,可能会占用太大的内存和 CPU -
PULL 类似于
SAX
,提供了开始元素和结束元素,非常适合 Android,因为SharedPreference
也是用的PULL
来解析