XML解析之PULL解析

来源:互联网 发布:php web服务的搭建 编辑:程序博客网 时间:2024/05/22 21:27
list = new ArrayList<person>();
//得到一个pull解析的解析器
XmlPullParser parser = Xml.newPullParser();

try {
File file = new File(Environment.getExternalStorageDirectory(), "person.xml");
//InputStream is = getAssets().open("data.xml");
FileInputStream fis = new FileInputStream(file);

parser.setInput(fis, "utf-8");
//得到事件的类型
int eventType = parser.getEventType();

while(eventType!=parser.END_DOCUMENT){
//得到节点的名字
String name = parser.getName();

switch (eventType) {
case XmlPullParser.START_TAG:

if("person".equals(name)){
p = new person();
}

else if("name".equals(name)){
p.setName(parser.nextText());
}else if("age".equals(name)){
p.setAge(parser.nextText());
}

break;

case XmlPullParser.END_TAG:

if("person".equals(name)){
list.add(p);
p = null;
}





}

//下一个事件类型 是什么
eventType = parser.next();
}



} catch (Exception e) {
e.printStackTrace();
}


return list;
0 0
原创粉丝点击