【发布时间】:2012-12-17 11:38:19
【问题描述】:
我想知道在我的情况下,哪种 XML 解析器最适合 Perl。我做了很多阅读并尝试了XML::LibXML 和XML::SAX。第一个用了太多内存,第二个对我来说似乎没有那么快(即使在关闭纯 perl 解析器之后)。
我的需求相当具体。我通过 Net::SSH 库收到了高达 50MB 的较大响应。我想在收到这些数据时将其传递给 XML 库,以便在内存中保持最少的数据量。然后我需要在某些标签中查找数据并对其进行任何处理,在某些情况下汇总一堆值,在其他情况下只需提取值并将它们写入文件或其他任何内容。所以我需要一个可以连续工作、工作速度快并且使用最少内存的 XML 解析器。我获得的数据最多为 1024 字节,因此我希望能够执行类似 $myparser->sendData($mynewData) 的操作,然后在打开或关闭新标签时调用函数,类似于 XML::SAX 所做的那样。
我不一定需要 XPath 或 XSLT。
【问题讨论】: