Android中xml解析方式(SAX,PULL原理)
2012-01-30 15:54
459 查看
xml解析一共有几种方式
一个是DOM,它是生成一个树,有了树以后你搜索、查找都可以做。
另一种是基于流的,就是解析器从头到尾解析一遍xml文件,解析完了以后你不过想再查找重新解析。
基于流的目前有两种比较有名,一个是SAX,另一个是PULL
sax的原理是解析器解析过程中通过回调把tag/value值等传给你,你可以比较、操作。
而pull的原理是它只告诉你一个tag开始或者结束了,至于tag/value的值是什么需要你自己去向parser问,所以叫做pull,而sax看起来是push给你的。
sax/pull还有一点区别,你随便找个sax和pull的例子比较一下就可以发现,pull是一个while循环,随时可以跳出,而sax不是,sax是只要解析了,就必须解析完成。
Pull解析器的运行方式与
SAX 解析器相似。它提供了类似的事件,如:开始元素和结束元素事件,使用parser.next()可以进入下一个元素并触发相应事件。事件将作为数值代码被发送,因此可以使用一个switch对感兴趣的事件进行处理。当元素开始解析时,调用parser.nextText()方法可以获取下一个Text类型元素的值。
一个是DOM,它是生成一个树,有了树以后你搜索、查找都可以做。
另一种是基于流的,就是解析器从头到尾解析一遍xml文件,解析完了以后你不过想再查找重新解析。
基于流的目前有两种比较有名,一个是SAX,另一个是PULL
sax的原理是解析器解析过程中通过回调把tag/value值等传给你,你可以比较、操作。
而pull的原理是它只告诉你一个tag开始或者结束了,至于tag/value的值是什么需要你自己去向parser问,所以叫做pull,而sax看起来是push给你的。
sax/pull还有一点区别,你随便找个sax和pull的例子比较一下就可以发现,pull是一个while循环,随时可以跳出,而sax不是,sax是只要解析了,就必须解析完成。
Pull解析器的运行方式与
SAX 解析器相似。它提供了类似的事件,如:开始元素和结束元素事件,使用parser.next()可以进入下一个元素并触发相应事件。事件将作为数值代码被发送,因此可以使用一个switch对感兴趣的事件进行处理。当元素开始解析时,调用parser.nextText()方法可以获取下一个Text类型元素的值。
相关文章推荐
- android解析XML的三种方式(DOM,SAX,PULL)
- android解析XML总结(SAX、Pull、Dom三种方式)
- android解析XML总结(SAX、Pull、Dom三种方式)
- Android中xml解析的三种方式Pull、Sax、Dom
- Android解析XML三种方式(PULL、SAX、DOM)
- 几种常见的xml解析方式 SAX,DOM,PULL以android为例
- android解析XML总结(SAX、Pull、Dom三种方式)
- android解析XML总结(SAX、Pull、Dom三种方式)
- 在android开发中,经常用到去解析xml文件,常见的解析xml的方式有一下三种:SAX、Pull、Dom解析方式。最近做了一个android版的CSDN阅读器,用到了其中的两种(sax,pull)
- android解析XML总结(SAX、Pull、Dom三种方式)
- android解析XML总结(SAX、Pull、Dom三种方式)
- android解析XML总结(SAX、Pull、Dom三种方式) <转载>
- android解析XML总结-SAX、Pull、Dom三种方式
- android之三种方式解析xml(dom,sax,pull)
- Android学习指南之三十一:Android中使用SAX和pull方式解析XML
- Android解析XML三种方式(PULL、SAX、DOM)
- android解析XML总结(SAX、Pull、Dom三种方式)
- Android解析XML三种方式(PULL、SAX、DOM)
- android解析XML总结(SAX、Pull、Dom三种方式)
- Android中三种常用解析XML的方式(DOM、SAX、PULL)简介及区别