xml文件:
<?xml version="1.0" encoding="UTF-8"?><persons><person id="23"><name>liming</name><age>30</age></person><person id="20"><name>zhangxiaoxiao</name><age>25</age></person></persons>


模板类:

public class person {private int id;private String name;private int age;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "person [id=" + id + ", name=" + name + ", age=" + age + "]";}}
读取XML代码:

/** * 读取XML文件 * @param xml * @return * @throws Exception */public List<person> getPerson(InputStream xml) throws Exception{XmlPullParser pullPare=Xml.newPullParser();pullPare.setInput(xml,"UTF-8");int event=pullPare.getEventType();person p=null;ArrayList<person> ps=null;while(event!=XmlPullParser.END_DOCUMENT){switch(event){case XmlPullParser.START_DOCUMENT:ps=new ArrayList<person>();break;case XmlPullParser.START_TAG:if("person".equals(pullPare.getName())){p=new person();int i=Integer.parseInt(pullPare.getAttributeValue(null, "id"));p.setId(i);}else if("name".equals(pullPare.getName())){p.setName(pullPare.nextText());}else if("age".equals(pullPare.getName())){p.setAge(new Short(pullPare.nextText()));}break;case XmlPullParser.END_TAG:if("person".equals(pullPare.getName())){ps.add(p);p=null;}break;}event=pullPare.next();}return ps;}
调用读取并打印:

personservice p=new personservice();InputStream xml=this.getClass().getClassLoader().getResourceAsStream("person.xml");try {List<person> pl=p.getPerson(xml);for(person item :pl){Log.i("循环输出", item.toString());}Log.i("结果", "成功");} catch (Exception e) {// TODO Auto-generated catch blockLog.i("结果", "错误");e.printStackTrace();}




更多相关文章

  1. android 通过pull解析xml文件
  2. Android中音频文件的使用
  3. Android(安卓)反编译,修改,重新打包,签名
  4. Android打电话,挂电话
  5. Android播放ogg声音文件
  6. react-native apk打包 android
  7. [Android] ImageButton | Button | TextView 点击和触摸效果实现
  8. Android遍历SqlLite cursor对象:
  9. NPM 和webpack 的基础使用

随机推荐

  1. CentOS 7.3上SQL Server vNext CTP 1.2安
  2. SQLite Delete详解及实例代码
  3. SQL2008 详解直接将XML存入到SQL中
  4. SQL Server存储过程同时返回分页结果集和
  5. 系统隐形杀手——阻塞与等待(SQL)
  6. Sqlserver 高并发和大数据存储方案
  7. SQL JOIN 连接详细介绍及简单使用实例
  8. SQL Server常见问题及解决方法分享
  9. Mysql用户忘记密码及密码过期问题的处理
  10. SQL SERVER 分组求和sql语句