我有一个非常大的XML文件,我想列出文档元素的所有子节点。我正在使用下面的代码,它工作正常,但是处理文件花费的时间很长,并且还从不需要的document元素中获取数据:
use XML::Simple;
my $xml = XML::Simple->new();
my $d = $xml->XMLin("sample.xml");
my @arr = keys %$d;
print "@arr\n";
通过使用XML :: LibXML和XPath。
use 5.014;
use warnings;
use XML::LibXML;
my $file = 'xml';
my $dom = XML::LibXML->load_xml(location => $file);
for my $child ($dom->findnodes( q{//document/*} )) {
say $child->nodeName();
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。