XML的PULL解析

ull解析XML文件的方式与SAX解析XML文件的方式大致相同,他们都是基于事件驱动的。所以,利用pull解析XML文件需要下面几个步骤:

1)通过XMLPullParserFactory获取XMLPullParser对象。

2)通过XMLPullParser对象设置输入流。

3)通过parser.next(),持续的解析XML文件直到文件的尾部。

下面的几个方法是经常需要的:XMLPullParserFacotry.newInstance( ) facotry.newPullParser( ) parser.setInput( ) parser.next( ).

下面通过一个例子描述上面的几个步骤:

//1.第一步,创建解析工厂
XmlPullParserFactoryfactory=XmlPullParserFactory.newInstance();
//设置支持命名空间
factory.setNamespaceAware(true);
//2.生成parser对象
XmlPullParserparser=factory.newPullParser();
//3.设置输入
parser.setInput(newStringReader("<?xmlversion=\"1.0\"?><poem><title>静夜思</title><author>李白</author><content>床前明月光,疑似地上霜,举头忘明月,低头思故乡</content></poem>"));
//获取输入类型
inteventType=parser.getEventType();
while(eventType!=XmlPullParser.END_DOCUMENT)
{
if(eventType==XmlPullParser.START_DOCUMENT){
Log.d("tag","----"+parser.getName());
}
if(eventType==XmlPullParser.START_TAG){
Log.d("tag","----"+parser.getName());
}
if(eventType==XmlPullParser.TEXT){
Log.d("tag","----"+parser.getText());
}
if(eventType==XmlPullParser.END_TAG){
Log.d("tag","----"+parser.getName());
}
//不断的去更新
eventType=parser.next();
}

打印出的对象:


版权声明:感谢summerpxy分享,转载请取得原作者同意

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念