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;