pull解析(原始xml文件放到assets中)
2016-06-30 16:03
330 查看
===================MainActivity==============
public void pull() {
try {
Person p = null;
XmlPullParser parser = Xml.newPullParser();
parser.setInput(getAssets().open("Person.xml"), "UTF-8");
int type = parser.getEventType();
while (parser.getEventType() != XmlPullParser.END_DOCUMENT) {
switch (type) {
case XmlPullParser.START_DOCUMENT:
plist = new ArrayList<Person>();
break;
case XmlPullParser.START_TAG:
if ("person".equals(parser.getName())) {
p = new Person();
p.setId(Integer.valueOf(parser.getAttributeValue(null,"id")));
}
if (p != null) {
if ("name".equals(parser.getName())) {
p.setName(parser.nextText());
}else if ("age".equals(parser.getName())) {
p.setAge(Integer.valueOf((parser.nextText())));
}else if ("address".equals(parser.getName())) {
p.setAddress(parser.nextText());
}
}
break;
case XmlPullParser.END_TAG:
if ("person".equals(parser.getName())) {
plist.add(p);
}
break;
}
type = parser.next();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void pull() {
try {
Person p = null;
XmlPullParser parser = Xml.newPullParser();
parser.setInput(getAssets().open("Person.xml"), "UTF-8");
int type = parser.getEventType();
while (parser.getEventType() != XmlPullParser.END_DOCUMENT) {
switch (type) {
case XmlPullParser.START_DOCUMENT:
plist = new ArrayList<Person>();
break;
case XmlPullParser.START_TAG:
if ("person".equals(parser.getName())) {
p = new Person();
p.setId(Integer.valueOf(parser.getAttributeValue(null,"id")));
}
if (p != null) {
if ("name".equals(parser.getName())) {
p.setName(parser.nextText());
}else if ("age".equals(parser.getName())) {
p.setAge(Integer.valueOf((parser.nextText())));
}else if ("address".equals(parser.getName())) {
p.setAddress(parser.nextText());
}
}
break;
case XmlPullParser.END_TAG:
if ("person".equals(parser.getName())) {
plist.add(p);
}
break;
}
type = parser.next();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
相关文章推荐
- Java集合详解系列----Java集合继承体系详解
- Socket.IO 内置事件
- 【jmeter】目录介绍
- UnsharpMask锐度清晰度调整
- 345. Reverse Vowels of a String
- SparkSQL(下)--Spark实战应用
- 不能远程连接linux的mysql服务器
- POJ 3071 Football
- nginx + lua + redis
- javaweb 写mysql数据库中文乱码
- 为什么高并发系统都喜欢玩异步
- JQuery之DOM操作
- 事件委托和事件绑定
- 为什么高并发系统都喜欢玩异步
- 知新之--12-factors
- C可变参数函数 实现
- 阿里云终端连接与实例管理
- Android开发学习之路-带文字的图片分享
- Ubuntu下图形化LAMP环境配置教程(linux)
- 使用TortoiseGit配置git遇到的问题及解决方案