加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

使用perl处理大型xml文件

发布时间:2020-12-15 21:59:08 所属栏目:大数据 来源:网络整理
导读:我有一个大约200MB的 XML文件,我希望逐行提取所选信息. 我用perl编写了一个脚本,使用模块XML :: LibXML解析文件内容,然后循环内容并逐行提取信息.这是无效的,因为它将整个文件读入内存,但我喜欢LibXML,因为我可以使用我需要的信息的XPath位置. 我可以获得有
我有一个大约200MB的 XML文件,我希望逐行提取所选信息.

我用perl编写了一个脚本,使用模块XML :: LibXML解析文件内容,然后循环内容并逐行提取信息.这是无效的,因为它将整个文件读入内存,但我喜欢LibXML,因为我可以使用我需要的信息的XPath位置.

我可以获得有关如何使我的代码更有效的建议.

通过搜索我已经知道XML :: SAX和XML :: LibXML :: SAX,但我找不到解释用法的文档,它们似乎不包括任何类型的XPath寻址结构.

解决方法

您是否考虑过 XML::Twig模块,它对于大型文件处理更有效,正如它在 CPAN模块描述中所述:

名称

XML::Twig – A perl module for
processing huge XML documents in
tree mode.

概要

It allows minimal resource (CPU and
memory) usage by building the tree
only for the parts of the documents
that need actual processing,through
the use of the twig_roots and
twig_print_outside_roots options.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读