android基础笔记——解析xml文件

来源:互联网 发布:算法交易 twap 编辑:程序博客网 时间:2024/05/21 09:46

第一步:创建一个XML解析器

XmlPullParser parser = Xml.newPullParser();

第二步:初始化PULL解析器:输入流和编码类型

parser.setInput(is, "utf-8");

第三步: 获取事件类型信息,也就是获得XML文件各节点的类型

int type = parser.getEventType();

第四步:while循环,判断事件类型

示例代码:

while (type != XmlPullParser.END_DOCUMENT) {switch (type) {case XmlPullParser.START_TAG:if () {} else if () {} else if () {}break;}type = parser.next();}

完整示例代码:

public static UpdataInfo getUpdataInfo(InputStream is) throws Exception{      UpdataInfo info=new UpdataInfo();             XmlPullParser parser= Xml.newPullParser();//创建一个XML解析器            parser.setInput(is, "utf-8");//初始化pull解析器:输入流和编码类型            int type=parser.getEventType();//获取事件类型信息,也就是获得XML文件各节点的类型      //while循环      while(type!=XmlPullParser.END_DOCUMENT){          switch (type) {          case XmlPullParser.START_TAG:              if("version".equals(parser.getName())){                  String version=parser.nextText();                  info.setVersion(version);                  Log.i(tag, version);              }else if("description".equals(parser.getName())){                  String description=parser.nextText();                  info.setDescription(description);                  Log.i(tag, description);              }else if("apkurl".equals(parser.getName())){                  String apkurl=parser.nextText();                  info.setApkurl(apkurl);                  Log.i(tag, apkurl);                               }              break;          }          type=parser.next();      }             return info;  } 


0 0
原创粉丝点击