Android中怎么使用pull方式解析xml格式文件-创新互联

这篇文章将为大家详细讲解有关Android中怎么使用pull方式解析xml格式文件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

创新新互联,凭借十余年的网站设计、成都网站设计经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有成百上千家案例。做网站建设,选创新互联建站

具体如下:



 
   will
   21
 
 
   will2
   22
 

下面就来写一个解析xml的类,解析的流程如下

(1)取得pull解析器
(2)设置解析器的输入流
(3)产生第一个事件
(4)开始解析
(5)解析结束

package org.lxh.impl;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import org.lxh.vo.Person;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import android.util.Log;
import android.util.Xml;
public class Parse2 {
 public List getPersons(InputStream in) throws Throwable{
   Person p=null;
   List persons=null;
   XmlPullParser parser=Xml.newPullParser();
   parser.setInput(in, "UTF-8");
   int event=parser.getEventType();//产生第一个事件
   while(event!=XmlPullParser.END_DOCUMENT){ //如果不是文档结束事件
     switch(event){
      case XmlPullParser.START_DOCUMENT:
        persons=new ArrayList(); //在文档的开始实例化集合
        break;
      case XmlPullParser.START_TAG:
        String name=parser.getName();//取得当前解析器指向的元素名称
        if("person".equals(name)){
          p=new Person();
          p.setId(parser.getAttributeValue(0));
        }
        if(p!=null){
          if("name".equals(name)){
            p.setName(parser.nextText()); //取得当前解析器指向的下一个元素的文本节点
          }
          if("age".equals(name)){
            p.setAge(Integer.parseInt(parser.nextText()));
          }
        }
        break;
      case XmlPullParser.END_TAG:
        if("person".equals(parser.getName())){ //person标签结束就把数据存入集合
          persons.add(p);
          //p=null;
        }
        break;
     }
     event=parser.next();
   }
   return persons;
 }
}

这样的解析比起sax应该比较简单了,单元测试也用昨天那个只是少做了修改。下面看一下效果截图

Android中怎么使用pull方式解析xml格式文件

关于Android中怎么使用pull方式解析xml格式文件就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


分享文章:Android中怎么使用pull方式解析xml格式文件-创新互联
文章源于:http://bzwzjz.com/article/idsop.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都商城网站制作 四川成都网站建设 网站制作公司 专业网站设计 企业网站设计 广安网站设计 高端定制网站设计 企业网站建设 成都响应式网站建设 四川成都网站设计 专业网站建设 重庆网站建设 企业网站制作 重庆企业网站建设 成都网站建设 商城网站建设 成都模版网站建设 网站建设公司 成都网站建设 成都网站建设 企业手机网站建设 攀枝花网站设计