Android中使用Pull解析器解析XML文件简介
2013-12-27 00:20
393 查看
Android中解析XML时可以使用其内置的XML解析器,和SAX基本类似,也是事件驱动类型,但不同的是Pull解析事件返回的是数值型,而非方法。其使用简介如下:
import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import android.util.Xml; /** * 使用Pull解析器解析XML文件 */ public class XmlPullService { // 保存解析数据 private static List<Person> persons; public static List<Person> getPersons(InputStream inStream) throws XmlPullParserException, IOException { // 获得Pull解析器对象 XmlPullParser parser = Xml.newPullParser(); // 设置Pull解析的数据和方式 parser.setInput(inStream, "UTF-8"); int type = parser.getEventType(); Person person = null; while(type != XmlPullParser.END_DOCUMENT) { switch (type) { case XmlPullParser.START_DOCUMENT: persons = new ArrayList<Person>(); break; case XmlPullParser.START_TAG: person = new Person(); if ("person".equals(parser.getName())) { Integer id = Integer.parseInt(parser.getAttributeValue(null, "id")); person.setId(id); } // parser.nextText()可以获取下一个Text类型的节点值 else if ("name".equals(parser.getName())) { String name = parser.nextText(); person.setName(name); } else if ("age".equals(parser.getName())) { int age = Integer.parseInt(parser.nextText()); person.setAge(age); } break; case XmlPullParser.END_TAG: if ("person".equals(parser.getName())) { persons.add(person); person = null; } break; default: break; } // 进入下一个元素,并触发相应的事件 type = parser.next(); } inStream.close(); return persons; } }
相关文章推荐
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- android使用pull解析器来解析和生成xml文件
- android 使用集成的pull解析器解析xml文件
- Android使用pull解析器解析xml文件
- Android使用Pull解析器解析xml文件的实现代码
- Android使用Pull解析器解析XML文件
- Android使用Pull解析器解析XML文件
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- Android--使用Pull解析器解析xml文件
- Android使用pull解析器解析xml文件
- Android中使用PULL方式解析XML文件
- 在android中使用Pull解析器读取xml文件,并进行测试
- android中使用pull方式解析sdcard中的xml文件实例
- Android演示使用DOM解析xml文件
- Android中使用SAX方式解析XML文件
- Android使用Pull生成/解析XML文件
- android使用XmlPullParser来解析XML文件