2

我一直在阅读使用 SAX、STAX 和 dom 进行 xml 读写的内容。我的问题是,即使在阅读了优点和缺点之后,我仍然不确定哪个最适合我的目的 - 尽管 DOM 看起来确实是最简单的,但我将在内存非常薄弱的​​服务器上运行这个程序,所以如果可能的话,我热衷于使程序更有效率。对服务器的高需求也将推动对效率的需求。

这是我需要的:

  1. 只需阅读一个 xml 文档,从中提取不同的数据。在这一点上,我已经决定 SAX 解析器将是我所需要的,因为它显然是最快的?

  2. 但是,我还需要能够生成 xml 文档。在这一点上,我觉得很好 - STAX 是我应该使用的,因为它似乎具有与 SAX 相似的功能,但是允许生成 xml 代码。

  3. 最棘手的是我需要能够阅读现有的 xml 文档并编辑它的特定部分,即开始和结束标记之间的字符。DOM 看起来是最好的,但是每个人都说 DOM 使用大量资源并且速度很慢。那么这对 Stax 可行吗?

我想使用 dom 但关心内存和处理器使用等。

我可以问一下,与真实世界示例中的 Stax 相比,它会使用多少资源?xml 文件不太可能很大,我只需要进行一些读写操作。也就是说,程序是一个游戏,一开始我需要加载一个玩家的信息,最后找到玩家的xml信息,并尽快根据玩家的表现进行修改。

非常感谢任何答案/建议

4

1 回答 1

1

使用 Sax 因为你想修改 XML,这对你没有帮助

使用 DOM 既然你关心内存(效率),这是行不通的

使用 Stax 这可以帮助您解决问题。你也指出来了。这里讨论了如何使用 Stax 修改 XML

于 2013-06-27T04:43:56.050 回答