Android:DOM vs SAX vs XMLPullParser 解析?

2023-12-23

我正在使用 SAX 解析器解析 XML 文档。

我想知道与哪个合作更好更快DOM, SAX解析器 or XMLPull解析器.


这取决于你在做什么,如果你有非常大的文件,那么你应该使用 SAX 解析器,因为它会触发事件并释放它们,内存中不会存储任何内容,并且使用 SAX 解析器你无法以随机方式访问元素是没有回头路了! ,但是 Dom 允许您访问 xml 文件的任何部分,因为它将整个文件/文档保存在内存中。希望这能回答你的问题。

如果你想知道哪个解析器最快Xerces http://xerces.apache.org/将是您能找到的最快的,并且 SAX 解析器应该为您提供比 Dom 更高的性能

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android:DOM vs SAX vs XMLPullParser 解析? 的相关文章

随机推荐

  • 使用两个 1d 数组高效索引 2d numpy 数组

    我有一个大型 2d numpy 数组和两个 1d 数组 表示 2d 数组中的 x y 索引 我想使用这些一维数组对二维数组执行操作 我可以使用 for 循环来完成此操作 但在处理大型数组时速度非常慢 有更快的方法吗 我尝试简单地使用一维数组
  • Scala:隐式传递一个隐式参数,显式传递另一个参数。是否可以?

    让我们考虑一下这个函数 def foo implicit a Int b String println a b 现在 让我们假设有一个隐含的String and Int implicit val i1 1 在范围内 但我们想传递另一个 no
  • 构建器模式与配置对象

    构建器模式在创建不可变对象时很流行 但创建构建器会产生一些编程开销 所以我想知道为什么不简单地使用配置对象 构建器的用法如下所示 Product p Product Builder name Vodka alcohol 0 38 size
  • 如何在Python中创建一组参数化函数? [复制]

    这个问题在这里已经有答案了 我正在尝试创建一系列函数 并通过 shift 参数进行参数化 考虑下面的代码 我希望 for 循环创建一组函数 每个函数都会改变 不同数量的争论 Python 3 code N 5 fns for idx in
  • 如何检查数组中是否可以求和?

    给定一个数组N整数 检查是否可以获得总和S 通过选择数组的一些 或不选择 元素并添加它们 我尝试使用贪婪方法解决这个问题 首先对数组进行排序 然后越来越接近总和 然而它不起作用 谁能告诉我应该如何解决这个问题 t int input for
  • iPhone:NSURLRequest CachePolicy 设置之间的性能差异

    使用时NSURL请求 http developer apple com iphone library documentation Cocoa Reference Foundation Classes NSURLRequest Class R
  • 什么是红/绿测试?

    我相信我已经知道答案 但我不是 100 确定 所以只是一个简单的问题 红 绿测试实际上意味着什么 我将其理解为 首先编写测试 以便它们全部失败 全部红色 然后编写代码并观察每个测试如何变成绿色 当所有测试都变成绿色时 就没事了 我在Scot
  • npm 包中的二进制文件

    我尝试创建一个 npm 包 它可以作为 shell 中的命令启动 我有package json name myapp version 0 0 6 dependencies async watch node promise rmdir sho
  • Java中的内部静态类

    使用内部静态类有什么好处 与其他选项相比 我应该在哪些方面更喜欢它 它的内存是如何分配的 如果内部类是静态的 则不需要外部类的实例来实例化它 如果内部类是公共的 那么它基本上只是一种名称范围技术 用于强调该类 属于 外部类这一事实 但是 如
  • 如何声明对本机 .so 库的依赖以进行测试?

    我在 Akka 中有一个生产应用程序 我从以下选项开始 Djava library path native with native包含库的目录libsigar amd64 linux so 一切都很好 当我打字时sbt test我面临以下错
  • ImageMagick Convert 在命令行中工作,但不能通过 PHP exec()

    我正在使用 PHPexec 使用 ImagicMagick 转换图像convert 这是在 CentOS 服务器上运行的 exec convert http www google com images srpr logo3w png jpg
  • 如何设置定时器

    有什么办法可以将计时器设置为 60 秒xor ah ah Enter Again xor ah ah I should put 60 seconds here int 16h The user should press S before 6
  • 具有 JavaScript 依赖项的聚合物元素

    我已经创建了用于渲染 markdown 的 Polymer 元素 https github com robdodson mark down它使用 Marked js 库 我想知道 加载其依赖项的推荐方式是什么 我应该只使用脚本标签吗 或者将
  • Rails 日期与 json

    我正在实施一个Facebook应用及使用AJAX JSON 但是 那JSON返回的结构具有以下格式2010 05 30T06 14 00Z 我正在打电话Game all to json在控制器动作中 如何将它们转换为正常的日期格式 从服务器
  • 在隐藏字段中传递帖子 ID 的值

    这与我的另一个问题是一致的 当我提交属于特定帖子的新评论时 试图获取正确的 post id form html erb 如果没有看到更多代码 很难确切地知道你在做什么 但我的猜测是 post 实例变量已使用设置 post Post find
  • 从 SQLite Blob 创建 Drawable 时出现问题

    我将图像文件作为 blob 缓存在 SQLite 数据库中 我在另一个平台上有一个类似的应用程序 它对相同的图像文件执行相同的操作 两个平台上的数据库报告相同图像的完全相同的大小 所以我认为 但不能保证图像数据完好无损地进入数据库 但是当我
  • Python ASCII 到二进制

    是否有一个内置函数可以将 ASCII 转换为二进制 例如 将 P 转换为 01010000 我正在使用Python 2 6 6 两个人在一起怎么样 bin ord P 0b1010000
  • 使用 HighCharts 和 DotNet.HighCharts 来“玩”多个系列

    我有一组使用 VB NET 和 DotNet HighCharts 创建的系列 Dim SeriesList4As New List Of Series stfipsList4 Count 我想要发生的是类似的事情http jsfiddle
  • 删除navigationItem.titleView后恢复navigationItem.title

    我的应用程序有 2 个选项卡 tabA and tabB 根据我设置的位置navigationItem titleView of tabB to a UIImageView when viewWillAppear 叫做 默认行为tabB就是
  • Android:DOM vs SAX vs XMLPullParser 解析?

    我正在使用 SAX 解析器解析 XML 文档 我想知道与哪个合作更好更快DOM SAX解析器 or XMLPull解析器 这取决于你在做什么 如果你有非常大的文件 那么你应该使用 SAX 解析器 因为它会触发事件并释放它们 内存中不会存储任