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

为什么XML:Simple抱怨“找不到元素”?

发布时间:2020-12-16 23:14:43 所属栏目:百科 来源:网络整理
导读:我正在尝试执行一个简单的Perl程序,该程序使用 XML::Simple打印出XML文件中的数据. 但是,我得到的错误是: no element found at line 15,column 0,byte 308 at /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi/XML/Parser.pm line 185 XML文件如
我正在尝试执行一个简单的Perl程序,该程序使用 XML::Simple打印出XML文件中的数据.
但是,我得到的错误是:

no element found at line 15,column 0,byte 308 at /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi/XML/Parser.pm line 185

XML文件如下:

<?xml version="1.0"?>
<customer-data>
<customer>
<first_name>Frank</first_name>
<last_name>Sanbeans</last_name>
<dob>3/10</dob>
<email>frank@example.com</email>
</customer>
<customer>
<first_name>Sandy</first_name>
<last_name>Sanbeans</last_name>
<dob>4/15</dob>
<email>sandy@example.com</email>
</customer>

而且,我的perl代码是:

use strict;
use XML::Simple;

my $xml = XMLin('./test.xml',forcearray => 1);
foreach my $customer (@{$xml->{customer}}) {
  print "Name: $customer->{first_name}->[0] ";
  print "$customer->{last_name}->[0]n";
  print "Birthday: $customer->{dob}->[0]n";
  print "E-mail Address: $customer->{email}->[0]n";
}

怎么解决这个问题?

谢谢.

解决方法

需要在文档末尾填写客户数据标签,以使其形成良好.这就是解析器barfs在文件末尾的原因.

(编辑:李大同)

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

    推荐文章
      热点阅读