Android:XML解析
来源:互联网 发布:淘宝客服主管工资 编辑:程序博客网 时间:2024/05/19 06:46
若要操作xml文档,首先需要将xml解析出来。通常情况下,解析xml文件有三种方式,分别是DOM解析、SAX解析和PULL解析,接下来针对这三种方式进行简单的介绍。
1.DOM解析
DOM(Document Object Mode)解析是一种基于对象的API,它会将xml文件的所有内容以文档树方式放在内存中,然后允许使用DOM API遍历XML树,检索所需的数据,这样便能根据树的结构以节点形式来对文件进行操作。
使用DOM操作XML的代码看起来是比较直观的,而且在编码方面比SAX解析更加简单。但是,由于DOM需要将整个XML文件以文档树的形式存放在内容中,消耗内存比较大。因此,较小的XML文件可以采用这种方式解析,但较大的文件不建议采用这种方式来解析。
2.SAX解析
SAX解析会逐行扫描XML文档,当遇到标签时触发解析处理器,采用事件处理的方式解析XML。它在读取文档的同时即可对XML进行处理,不必等到文档加载结束,相对快捷。而且也不需要将整个文档加载进内存,因此不存在占用内存的问题,可以解析超大XML。但是,SAX解析只能用来读取XML中的数据,无法进行增删改。
3.PULL解析
PULL解析器是一个开源的Java项目,既可以用于Android应用,也可以用于JavaEE程序。Android已经集成了PULL解析器,因此,在Android中最常用的解析方式就是PULL解析。
使用PULL解析XML文档,首先要创建XmlPullParser解析器,该解析器提供了很多属性,通过这些属性可以解析出XML文件中的各个节点内容。
XmlPullParser的常用属性如下:
XmlPullParser.START_DOCUMENT: XML文档的开始,如<?xml version="1.0"encoding="utf-8"?>。
XmlPullParser.END_DOCUMENT: XML文档的结束。
XmlPullParser.START_TAG: 开始节点,在xml文件中,除了文本之外,带有尖括号<>的都是开始节点,如<weather>。
XmlPullParser.END_TAG: 结束节点,带有</ >都是结束节点,如</weather>。
接下来介绍下PULL解析器的用法,具体步骤如下:
(1)通过调用Xml.newPullParser();得到一个XmlPullParser对象。
(2)通过parser.getEventType()获取到当前的事件类型。
(3)通过while循环判断当前操作事件类型是否为文档结束,是则跳出while循环。
(4)while循环中通过switch语句判断当前事件类型是否为开始标签,是则获取该标签中的内容。
- XML---Android中解析XML .
- XML - Android中解析XML
- android 解析XML 生成XML
- android Pull解析(XML解析)
- android XML解析
- Android Manifest.xml解析
- Android XML文档解析
- android xml解析
- android--xml解析
- Android--xml解析(Dom)
- Android中解析XML
- android SAX解析XML
- android中xml解析
- android教程--xml解析
- Android中XML解析
- android xml解析(一)
- android xml解析(二)
- Android--DOM解析XML
- mybatis常用代码
- 注解和注释以及Spring和SpringMVC常用的注解
- d3对于数组的处理
- android 获取http请求json数据 package com.my.gethttpjsondata; import java.io.BufferedReader; import java.
- leetcode Letter Combinations of a Phone Number(Java)
- Android:XML解析
- 【最短路中求至少需要的最短跳跃距离】poj 2253 Frogger
- 经验模态分解法简析(转)
- [转载]使用 CSS 处理文本过长和意外超出的方法和技巧
- 增强for
- 点击两次返回键退出应用
- iOS 底层解析weak的实现原理(包含weak对象的初始化,引用,释放的分析)
- 网络中出现TCP、UDP粘包、分包的两点解决办法
- Centos6搭建zabbix2.4