java中采用Pull解析器对XML文件进行解析
2012-12-04 09:33
246 查看
一、基本介绍
Android中极力推荐xmlpull方式解析xml。
xmlpull不仅可用在Android上同样也适用于javase,但在javase环境中需自己获取xmlpull所依赖的类库,kxml2-2.3.0.jar,xmlpull_1_1_3_4c.jar。
jar包下载网址
http://www.xmlpull.org/ http://kxml.sourceforge.net/
二、例子
读取到xml的声明返回数字0 START_DOCUMENT;
读取到xml的结束返回数字1 END_DOCUMENT ;
读取到xml的开始标签返回数字2 START_TAG
读取到xml的结束标签返回数字3 END_TAG
读取到xml的文本返回数字4 TEXT
Android中极力推荐xmlpull方式解析xml。
xmlpull不仅可用在Android上同样也适用于javase,但在javase环境中需自己获取xmlpull所依赖的类库,kxml2-2.3.0.jar,xmlpull_1_1_3_4c.jar。
jar包下载网址
http://www.xmlpull.org/ http://kxml.sourceforge.net/
二、例子
读取到xml的声明返回数字0 START_DOCUMENT;
读取到xml的结束返回数字1 END_DOCUMENT ;
读取到xml的开始标签返回数字2 START_TAG
读取到xml的结束标签返回数字3 END_TAG
读取到xml的文本返回数字4 TEXT
<?xml version="1.0" encoding="UTF-8"?> <people> <person id="001"> <name>XY1</name> <age>22</age> </person> <person id="002"> <name>XY2</name> <age>22</age> </person> </people>
public class PersonService { public List getPeople(InputStream xml) throws Exception { List lst = null; Person person = null; // 获得pull解析器工厂 XmlPullParserFactory pullParserFactory = XmlPullParserFactory.newInstance(); //获取XmlPullParser的实例 XmlPullParser pullParser = pullParserFactory.newPullParser(); // 设置需要解析的XML数据 pullParser.setInput(xml, "UTF-8"); // 取得事件 int event = pullParser.getEventType(); // 若为解析到末尾 while (event != XmlPullParser.END_DOCUMENT) // 文档结束 { // 节点名称 String nodeName = pullParser.getName(); switch (event) { case XmlPullParser.START_DOCUMENT: // 文档开始 lst = new ArrayList(); break; case XmlPullParser.START_TAG: // 标签开始 if ("person".equals(nodeName)) { String id = pullParser.getAttributeValue(0); person = new Person(); person.setId(id); } if ("name".equals(nodeName)) { String name = pullParser.nextText(); person.setName(name); } if ("age".equals(nodeName)) { int age = Integer.valueOf(pullParser.nextText()); person.setAge(age); } break; case XmlPullParser.END_TAG: // 标签结束 if ("person".equals(nodeName)) { lst.add(person); person = null; } break; } event = pullParser.next(); // 下一个标签 } return lst; } }
相关文章推荐
- java中采用Pull解析器对XML文件进行解析
- java中采用Pull解析器对XML文件进行解析
- java中采用Pull解析器对XML文件进行解析
- [置顶] java中采用Pull解析器对XML文件进行解析
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- 采用dom4j解析XML文件实现Java与oracle连接
- java中采用dom4j解析xml文件
- Java读取WEB-INF下XML文件并进行解析
- Android利用Pull解析器对List进行解析存储为XML文件(二)
- java中以JDOM方式来对xml文件进行解析操作
- java中采用SAX对XML文件解析
- android解析XML文件(采用Pull解析器解析文件)
- JAVA大字符串存储采用静态HTML,通过jsoup 对 HTML 文档进行解析和操作
- Java读取WEB-INF下XML文件并进行解析
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- 采用DocumentBuilderFactory来进行XML文件的解析
- Android中使用Pull解析器解析xml文件+进行简单的单元测试
- C++中用TinyXML对XML文件进行解析