像下面的代码那样读取 XML 数据是否会在内存中创建 DOM 树?
my $xml = new XML::Simple;
my $data = $xml->XMLin($blast_output,ForceArray => 1);
对于大型 XML 文件,我应该使用 SAX解析器,带有处理程序等?
最佳答案
对于大型 XML 文件,如果文档适合内存,您可以在 DOM 模式下使用 XML::LibXML,或者使用拉模式(参见 XML::LibXML::Reader )或 XML::Twig (我写的,所以我有偏见,但它通常适用于太大而无法放入内存的文件)。
我不是 SAX 的粉丝,它很难用而且实际上很慢。
关于xml - 我应该如何在 Perl 中解析大型 XML 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1838745/