XmlPullParser
2016-05-31 20:51
375 查看
public class MainActivity extends Activity {
private List<Book> l;
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); XmlPullParser xpp = Xml.newPullParser(); try { xpp.setInput(getAssets().open("books.xml"), "utf-8"); int event = xpp.getEventType(); String name = ""; Book b = null; int i = 0; boolean flag = true; while (flag) { switch (event) { case XmlPullParser.START_DOCUMENT: l = new ArrayList<Book>(); break; case XmlPullParser.START_TAG: name = xpp.getName(); if (name.equals("china")) { i = 1; } if (name.equals("foreiner")) { i = 2; } if (name.equals("book")) { b = new Book(); if (i == 1) { b.setCountry("china"); } if (i == 2) { b.setCountry("foreiner"); } } break; case XmlPullParser.TEXT: if (name.equals("price")) { b.setPrice(xpp.getText()); } else if (name.equals("name")) { b.setName(xpp.getText()); } else if (name.equals("author")) { b.setAuthor(xpp.getText()); } break; case XmlPullParser.END_TAG: name = xpp.getName(); if (name.equals("book")) { l.add(b); } if (name.equals("china") || name.equals("foreiner")) { i = 0; } name = ""; break; case XmlPullParser.END_DOCUMENT: flag = false; break; } event = xpp.next(); } } catch (Exception e) { e.printStackTrace(); } System.out.println(l.toString()); Log.d("user", l.toString()); }
}<?xml version="1.0" encoding="UTF-8"?><books> <china> <book> <price>50</price> <name>三国演义</name> <author>罗贯中</author> </book> <book> <price>60</price> <name>红楼梦</name> <author>曹雪芹</author> </book> <book> <price>40</price> <name>水浒传</name> <author>施耐庵</author> </book> </china> <foreiner> <book> <price>50</price> <name>巴黎圣母院</name> <author>雨果</author> </book> <book> <price>60</price> <name>母亲</name> <author>高尔基</author> </book> <book> <price>40</price> <name>钢铁怎样炼成的</name> <author>列夫</author> </book> </foreiner></books>
private List<Book> l;
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); XmlPullParser xpp = Xml.newPullParser(); try { xpp.setInput(getAssets().open("books.xml"), "utf-8"); int event = xpp.getEventType(); String name = ""; Book b = null; int i = 0; boolean flag = true; while (flag) { switch (event) { case XmlPullParser.START_DOCUMENT: l = new ArrayList<Book>(); break; case XmlPullParser.START_TAG: name = xpp.getName(); if (name.equals("china")) { i = 1; } if (name.equals("foreiner")) { i = 2; } if (name.equals("book")) { b = new Book(); if (i == 1) { b.setCountry("china"); } if (i == 2) { b.setCountry("foreiner"); } } break; case XmlPullParser.TEXT: if (name.equals("price")) { b.setPrice(xpp.getText()); } else if (name.equals("name")) { b.setName(xpp.getText()); } else if (name.equals("author")) { b.setAuthor(xpp.getText()); } break; case XmlPullParser.END_TAG: name = xpp.getName(); if (name.equals("book")) { l.add(b); } if (name.equals("china") || name.equals("foreiner")) { i = 0; } name = ""; break; case XmlPullParser.END_DOCUMENT: flag = false; break; } event = xpp.next(); } } catch (Exception e) { e.printStackTrace(); } System.out.println(l.toString()); Log.d("user", l.toString()); }
}<?xml version="1.0" encoding="UTF-8"?><books> <china> <book> <price>50</price> <name>三国演义</name> <author>罗贯中</author> </book> <book> <price>60</price> <name>红楼梦</name> <author>曹雪芹</author> </book> <book> <price>40</price> <name>水浒传</name> <author>施耐庵</author> </book> </china> <foreiner> <book> <price>50</price> <name>巴黎圣母院</name> <author>雨果</author> </book> <book> <price>60</price> <name>母亲</name> <author>高尔基</author> </book> <book> <price>40</price> <name>钢铁怎样炼成的</name> <author>列夫</author> </book> </foreiner></books>
相关文章推荐
- 关于getView中图片重复加载
- hadoop Federation(联邦)简介
- easyui中combobox设置默认值的方法
- HttpUtils请求数据
- 线程任务异常终止问题
- mac下安装和卸载软件
- 汇编学习(八)8086汇编拾遗 (7)
- App退出后,退出所有的Activity
- OLAP、OLTP的介绍和比较
- MYSQL索引使用
- 第17课Spark Streaming资源动态申请和动态控制消费速率原理剖析
- 动态规划总结
- osgAnimation之动画基础篇
- 阿里中间件招聘
- HUD 2444 The Accomodation of Students (二分图染色+最大匹配)
- 图片圆角弧度
- requests模拟登录
- 将一个整数拆分使其乘积最大
- ubuntu 下关闭apache服务自动启动
- 将数据转换为caffe可用的lmdb格式(convert_data_lmdb.sh 解析)