xml解析之PULL

前端之家收集整理的这篇文章主要介绍了xml解析之PULL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

XML解析有三种方式

1,DOM

通用性强,它会将XML文件的所有内容读取到内存中,然后使用DOM API遍历XML树、检索所需的数据;

优点:简单直观,但需要将文档读取到内存,

缺点:并不太适合移动设备;

2,SAX

SAX是一个解析速度快并且占用内存少的xml解析器;

采用事件驱动,它并不需要解析整个文档;

3,PULL(移动端推荐使用

Android自带的XML解析器,和SAX基本类似,也是事件驱动,不同的是PULL事件返回的是数值型。


PULL解析XML核心代码

  1. XmlPullParser parser = XmlPullParserFactory.newInstance().newPullParser();
  2. //XmlPullParser parser = Xml.newPullParser();
  3. parser.setInput(fileInputStream,“utf-8”);//设置数据源编码
  4. int eventCode = parser.getEventType();//获取事件类型
  5. while(eventCode != XmlPullParser.END_DOCUMENT) {
  6. switch (eventCode){
  7. case XmlPullParser.START_DOCUMENT: //开始读取XML文档
  8. //实例化集合类
  9. break;
  10. case XmlPullParser.START_TAG://开始读取某个标签
  11. if("person".equals(parser.getName())) {
  12. //通过getName判断读到哪个标签,然后通过nextText()获取文本节点值,或通过getAttributeValue(i)获取属性节点值
  13. }
  14. break;
  15. case XmlPullParser.END_TAG://读完一个Person,可以将其添加到集合类中
  16. break;
  17. }
  18. parser.next();
  19. }



下面是android端使用Pull解析XML的代码demo

下载地址:

android端Pull解析XML_DEMO

猜你在找的XML相关文章