<dependency>
<groupId>net.sourceforge.nekopull</groupId>
<artifactId>nekopull</artifactId>
<version>1.1.3</version>
</dependency>
XMLPullParser parser = new XMLPullParser();
try {
parser.setInput(new FileInputStream("path/to/xml/file.xml"), "UTF-8");
parser.setFeature(XMLPullParser.FEATURE_PROCESS_NAMESPACES, true);
e.printStackTrace();
}
try {
int eventType;
while ((eventType = parser.next()) != XMLPullParser.END_DOCUMENT) {
if (eventType == XMLPullParser.START_TAG) {
String tagName = parser.getTagName();
} else if (eventType == XMLPullParser.END_TAG) {
String tagName = parser.getTagName();
} else if (eventType == XMLPullParser.TEXT) {
String text = parser.getText();
}
}
e.printStackTrace();
}
List<Person> personList = new ArrayList<>();
Person person = null;
try {
int eventType;
while ((eventType = parser.next()) != XMLPullParser.END_DOCUMENT) {
if (eventType == XMLPullParser.START_TAG) {
String tagName = parser.getTagName();
if (tagName.equals("person")) {
person = new Person();
person.setId(parser.getAttributeValue(null, "id"));
} else if (tagName.equals("name")) {
String name = parser.getText();
person.setName(name);
} else if (tagName.equals("age")) {
int age = Integer.parseInt(parser.getText());
person.setAge(age);
}
} else if (eventType == XMLPullParser.END_TAG) {
String tagName = parser.getTagName();
if (tagName.equals("person")) {
personList.add(person);
}
}
}
e.printStackTrace();
}