繁体   English   中英

如何在大型xml文件中获取正确的数据?

[英]How to get correct data in a large xml file?

我有一个大的xml文件 (包含大约几百万个记录 ),并且需要获取大约100条记录 (基于id或类似的东西)

我尝试过TinyXmlXalan-C,但是它们都使用DOM ,因此会导致out of memory问题。

是否有一个C / C ++库可以做到这一点,而无需将所有数据作为DOM加载到内存中?

Apache Xerces呢? 它非常成熟,并且针对性能进行了优化(即,它不会将完整的文件读入内存!)。

您需要像Xerces这样的SAX解析器

Saxon-EE XSLT处理器可以以流模式处理XSLT的子集(也就是说,无需在内存中构建树)。 有关详细信息,请参见

http://www.saxonica.com/documentation/sourcedocs/streaming.xml

它不是C / C ++,但您没有说这是否是硬约束。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM