package com.animee.day13.pull;
import android.content.Context;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
/**
* Created by Administrator on 2018/1/10.
*/
public class PullDemo03 {
public static List<Person> parseXML(Context context) throws Exception {
List<Person>personList = new ArrayList<>();
// 1
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
// 2
XmlPullParser pullParser = factory.newPullParser();
// 3.
InputStream open = context.getAssets().open("person.xml");
pullParser.setInput(open,"utf-8");
// 4
int code = pullParser.getEventType();
Person person = null;
// 5
while (code != XmlPullParser.END_DOCUMENT) {
String qname = pullParser.getName();
switch (code) {
case XmlPullParser.START_TAG:
if (qname.equals("person")) {
person = new Person();
}else if (qname.equals("id")) {
person.setId(pullParser.nextText());
}else if (qname.equals("name")) {
person.setName(pullParser.nextText());
}else if (qname.equals("sex")) {
person.setSex(pullParser.nextText());
}else if (qname.equals("age")){
int age = Integer.parseInt(pullParser.nextText());
person.setAge(age);
}
break;
case XmlPullParser.END_TAG:
if (qname.equals("person")) {
personList.add(person);
}
break;
}
code = pullParser.next();
}
return personList;
}
import android.content.Context;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
/**
* Created by Administrator on 2018/1/10.
*/
public class PullDemo03 {
public static List<Person> parseXML(Context context) throws Exception {
List<Person>personList = new ArrayList<>();
// 1
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
// 2
XmlPullParser pullParser = factory.newPullParser();
// 3.
InputStream open = context.getAssets().open("person.xml");
pullParser.setInput(open,"utf-8");
// 4
int code = pullParser.getEventType();
Person person = null;
// 5
while (code != XmlPullParser.END_DOCUMENT) {
String qname = pullParser.getName();
switch (code) {
case XmlPullParser.START_TAG:
if (qname.equals("person")) {
person = new Person();
}else if (qname.equals("id")) {
person.setId(pullParser.nextText());
}else if (qname.equals("name")) {
person.setName(pullParser.nextText());
}else if (qname.equals("sex")) {
person.setSex(pullParser.nextText());
}else if (qname.equals("age")){
int age = Integer.parseInt(pullParser.nextText());
person.setAge(age);
}
break;
case XmlPullParser.END_TAG:
if (qname.equals("person")) {
personList.add(person);
}
break;
}
code = pullParser.next();
}
return personList;
}
}