我试图找到与使用少量的内存,或者内存中,而一定量的XPath支持XML解析器解析,我试图解析大的XML文件,如近1千兆,我一直在阅读xqilla,并且似乎是使用非常大量的内存,因为它是基于DOM,纠正我,如果我错了..反正 ,对于这样的XML解析器的C++ & Linux的任何想法?XML恒内存使用
XML恒内存使用
回答
如果你能处理基本上的单程XML,SAX解析器将是一个不错的主意。 Apache Xerces C++怎么样?
SAX不支持xpath,据我所知.. – shd 2011-04-16 09:50:16
对不起,我错过了。但是,如果你把你的XPath的要求,编写自己的代码来选择您所需要的数据,你应该能够使用SAX。 – 2011-04-16 09:53:00
@ user687543:为什么不能SAX解析器支持的XPath? – 2011-04-16 15:49:58
你可能看
pugixml能够提供非常快速,方便记忆,高效的XML文档处理。然而,由于pugixml有一个DOM解析器,它无法处理,不适合在内存中的XML文档;解析器也是非验证的,所以如果你需要DTD/Schema验证,库不适合你
但是,它明显不是一个流解析器。我知道流和xpath通常不会很好(由于潜在的随机访问要求)。 Allthough,在.NET中ever-famous XPathReader似乎桥接XPath的:)的流行子集
撒克逊EE支持使用XSLT或XQuery(大型XML文档流的缝隙流被更好地支持XSLT比XQuery中)。 http://www.saxonica.com/documentation/sourcedocs/streaming.xml
- 1. 使用恒定的内部HTML文件
- 2. 恒忆与纹理内存vs CUDA中的全局内存
- 3. 使用Xerces从内存中加载xml
- 4. 继承attr_accessor内恒定
- 5. 使用基于恒定值
- 6. 使用Oracle XMLgen Utility创建XML使用内存表数据
- 7. 将XSLT应用于内存中的XML并返回内存中的XML
- 8. 内存使用
- 9. 使用内存
- 10. 内存使用
- 11. 内存使用
- 12. curand状态在恒定内存(cuda随机)
- 13. 内存访问不是恒定的时间
- 14. 为什么CUDA中的恒定内存大小受到限制?
- 15. 恒定的缓冲区成员访问相同的内存
- 16. 最长的公共子串与恒定的内存?
- 17. 使用LINQ将XML保存为XML使用LINQ to XML
- 18. 使一个haskell程序运行在(大致)恒定的内存中
- 19. Java XML Dom内存密集
- 20. 内存中的XML操作
- 21. 使用SQL保存XML
- 22. 使用xml缓存数据
- 23. 解析内存中的zip内的XML
- 24. 内存使用aspnet_wp.exe
- 25. Kepler内存使用
- 26. 内存使用 - iPhone
- 27. Python3.4内存使用
- 28. Python - 内存使用
- 29. SQL内存使用
- 30. 内存使用率
你最好还要添加C++标签 – 2011-04-16 09:04:20