如何在perl中验证和解析超过500MB的XML文件

时间:2013-07-19 06:26:15

标签: perl large-files

任何正文都可以帮我解决如何使用perl验证和解析500MB文件的问题。

我尝试过libxml模块,但它只验证高达400MB。我也尝试了XML::SAX::ParserFactory,它给了我总线错误(核心转储)。

我非常感谢你的答案。

2 个答案:

答案 0 :(得分:4)

我会使用更现代的拉解析器:XML::LibXML::Reader

use XML::LibXML::Reader;

my $reader = XML::LibXML::Reader->new(location => "file.xml")
           or die "cannot read file.xml\n";
while ($reader->read) {
    processNode($reader);
}

sub processNode {
    ...
}

答案 1 :(得分:2)

您还可以使用专为此设计的XML::Twig。它会比XML :: LibXML :: Reader慢,但你会发现它更方便。