Xml解析Pull解析,基础实现

来源:互联网 发布:手机淘宝怎么修改分类 编辑:程序博客网 时间:2024/06/06 18:06

没有废话:::

// 创建一个pull的工厂类  XmlPullParserFactory

XmlPullParserFactory  factory  =  XmlPullParserFactory.newInstance();

// 通过工厂类得到一个解析者   XmlPullParser

XmlPullParser parser = factory.newPullParser();

// 得到解析者就可以通过解析者的setinput来将要解析的XML设置进去

parser.setInput(getAssets().open("data.xml"), “utf-8”);

parser.setInput(“输入流也就是文件地址”,”字符集”)

// 完成以上三部就可以开始解析咯:通过解析者的getEventType()方法获取到当前的解析事件

int type = parser.getEventType();

// 循环遍历如果解析事件不等于 XmlPullParser.END_DOCUMENT说明解析事件还没有结束

While(type != XmlPullParser.END_DOCUMENT )

// 在循环中,通过解析事件是否等于XmlPullParser.START_TAGXmlPullParser.END_TAG来判断某个节点的解析开始于结束,

If(type == XmlPullParser.START_TAG){ 开始解析节点 }

// 可以通过getName()方法获取到当前节点的名字如果发现节点名字等于数据名字 就调用nextText()方法获取到节点内容、

String nodeName = parser.getName();

if ("title".equals(nodeName)) {title = parser.nextText();}

// 最后通过调用Next()方法就可以获取到下一个解析事件了,相等于循环中的++

Type = parser.next();

 

/* Pull用到的**方法*常量*/

// 

XmlPullParserFactory  解析工厂,可以通过解析工厂获得到解析者的对象

XmlPullParser   解析者对象

// 方法

setInput() 用来设置要解析的xml数据

getEventType() 获取当前解析事件

getName() 获取节点名称

getAttributeValue(null,属性名)  获取节点属性

NextText()  获取节点内容

// 常量*

XmlPullParser.START_DOCUMENT  //  文档开始标签

XmlPullParser.END_DOCUMENT  // 文档结束标签

XmlPullParser.START_TAG    // 节点的开始标签

XmlPullParser.END_TAG     //  节点的结束标签

XmlPullParser.TEXT  //  文本内容

0 0
原创粉丝点击