首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android XML解析技术选择

Android XML解析技术选择
EN

Stack Overflow用户
提问于 2013-01-21 19:00:10
回答 1查看 974关注 0票数 1

在android中有像DOM,SAX和XmlPull解析这样的方法。如何决定在特定情况下必须使用哪种解析?请建议在特定情况下哪一个更合适

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-21 19:22:25

我给你一些关于SAX和Dom解析器的信息。

Java中的SAX XML解析器

SAX代表用于XML解析的简单API。这是一个基于事件的XML解析,它一步一步地解析XML文件,因此非常适合大型XML文件。当SAX XML Parser遇到开始标记、元素或属性时,它会触发事件,并相应地执行解析。推荐使用SAX XML解析器来解析Java中的大型xml文件,因为它不需要在Java中加载整个XML文件,并且可以读取大的XML文件的小部分。Java提供了对SAX解析器的支持,您可以使用SAX解析器解析Java中的任何xml文件,我在这里介绍了使用SAX解析器读取xml文件的示例。在java中使用SAX解析器的一个缺点是,与DOM解析器相比,使用SAX解析器读取Java中的XML文件需要更多的代码。

DOM和SAX XML解析器之间的差异以下是Java中DOM解析器和SAX解析器之间的一些高级差异:

1) DOM解析器将整个xml文档加载到内存中,而SAX只将一小部分XML文件加载到内存中。

2) DOM解析器比SAX更快,因为它访问内存中的整个XML文档。

3) Java中的SAX解析器比DOM解析器更适合大型XML文件,因为它不需要太多内存。

4) DOM解析器适用于文档对象模型,而SAX是一个基于事件的xml解析器。

这就是Java中SAX和DOM解析器之间的区别,现在由您决定选择哪个XML解析器。如果XML文件足够小,我建议使用DOM解析器而不是SAX解析器;如果不知道要处理的xml文件的大小或它们很大,建议使用SAX解析器。

还有用于XML解析的XMLPullParser,但我不太了解它,因为我没有用过它。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14437147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档