android中pull解析(XML)
来源:互联网 发布:spacex 知乎 编辑:程序博客网 时间:2024/05/04 08:38
1、写一个要解析的实体的类,你要解析相关字段的实体类,POJO)。
2、如果想看android中怎么获得流文件的(android中Form提交获得流文件),请看我的另外一篇笔记android中SAX解析.
3、编写解析代码:
package com.parse;import java.io.InputStream;import java.util.ArrayList;import java.util.List;import org.xmlpull.v1.XmlPullParser;import org.xmlpull.v1.XmlPullParserFactory;import com.entity.person.Person;/** * * 解析XML文件 * @author Administrator * */public class Parse_XML {//encode编码格式public static List<Person> getXML(InputStream in,String encode){List<Person> list = new ArrayList<Person>();Person person=null;//创建工厂实例来解析我们的XML文件try {XmlPullParserFactory pullFactory = XmlPullParserFactory.newInstance();XmlPullParser pull = pullFactory.newPullParser();pull.setInput(in,encode);//解析的时候不仅需要流文件还需要字符编码int eventType = pull.getEventType();while(eventType != XmlPullParser.END_DOCUMENT){//不是结束文档事件的时候switch (eventType) {//根据节点事件来分别处理case XmlPullParser.START_DOCUMENT:break;case XmlPullParser.START_TAG:if("person".equals(pull.getName())){person = new Person();person.setId(pull.getAttributeValue(0));//pull.getAttributeName(0)获得节点的第0个属性名称person.setClazz(pull.getAttributeValue(1));//取得第二个属性}else if(pull.getName().equals("name")){person.setName(pull.nextText());//获取该节点的内容}else if(pull.getName().equals("age")){person.setAge(pull.nextText());}break;case XmlPullParser.END_TAG:if("person".equals(pull.getName())){list.add(person);}break;case XmlPullParser.END_DOCUMENT:break;}eventType = pull.next();//注意放这个的位置,每一个标签过后都要next下一个标签}}catch (Exception e) {e.printStackTrace();}return list;}}
- android中XML的解析(pull)
- android中pull解析(XML)
- Android中XML解析-PULL解析
- android中Xml解析之Pull解析
- Android XML解析(PULL)
- Android应用中使用Pull解析XML文件(传智播客)
- android中xml中的sax pull解析
- android中利用pull解析xml文件
- Android中XML解析DOM/SAX/PULL
- Android 中使用Pull解析XML文件
- Android中pull解析XML文件
- Android 中使用Pull解析XML文件
- Android中采用pull解析xml文件
- android中pull解析xml文件
- android中xml的pull解析
- Android中使用pull解析xml文件
- Android中使用pull解析xml文件
- Android中关于pull解析xml
- Jedis使用总结【pipeline】【分布式的id生成器】【分布式锁【watch】【multi】】【redis分布式】
- 2013_09_22 固定div setTimeout
- strpbrk函数
- java常见排序
- 《庖丁解牛:纵向切入ASP.NET3.5控件和组件开发技术》- 推荐序
- android中pull解析(XML)
- C#序列化 反序列化 深入学习
- java jstack dump 线程 介绍 解释
- 【Java】java生成xls(poi)
- CABasicAnimation用法和一些簡單的動畫效果,移動,旋轉,縮放
- 用SharedPreferences实现账号密码的记忆功能和自动登陆功能
- shell编程之如何遍历进入当前目录下的所有子目录
- vim 为新添加的文件后缀支持语法高亮
- iOS程序入门开发练习:秒表stopWatch