在MAC Snow Leopard上运行时出现XML错误

时间:2013-07-08 08:33:54

标签: xml macos perl

尝试在snow-leopard上运行我的xml解析过程。该进程读入xml文件,解析,提取数据块并写入输出文件。 进程就像Windows机器上的魅力一样。(感谢大家在stackoverflow)但是当我尝试在我的mac上运行时,输出文件中的文本数据块被写成:

XML ::的libxml ::元= SCALAR(0x1008c61d0)|

谷歌搜索但没有发现任何相关内容。希望有人在这里指出问题是什么?这可能与安装相关或与流程相关吗?

任何帮助将不胜感激。

谢谢, 西马克

1 个答案:

答案 0 :(得分:1)

XML :: LibXML的最新版本对XML :: LibXML :: Element对象进行了字符串重载。因此,以下脚本将显示具有不同XML :: LibXML版本的不同输出:

use strict;
use warnings;
use XML::LibXML;

my $doc = XML::LibXML->new->parse_string(<<EOF);
<test>
  <foo>hello</foo>
</test>
EOF
my($node) = $doc->findnodes('/test/foo');
print $node, "\n";

在安装了XML :: LibXML 1.69的旧系统上,输出为:

XML::LibXML::Element=SCALAR(0x8259700)

在安装了2.0014的较新系统上,输出为:

<foo>hello</foo>