首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XML::简单、格式不正确(无效令牌)标记

XML::简单、格式不正确(无效令牌)标记
EN

Stack Overflow用户
提问于 2014-12-13 17:50:58
回答 1查看 4.5K关注 0票数 1

我正在使用Mark的“XML和Perl”一书,第一批介绍性程序之一是使用XML::Simple,我使用CPAN下载到Fedora。

我一直在犯这个错误

代码语言:javascript
复制
not well-formed (invalid token) at line 1

我使用了一段时间的XML文档,然后加载了另一个XML文件,得到了同样的错误。

这个模块有什么问题吗?

代码语言:javascript
复制
[FEDORA_CASPER@new-host-3 xmlandperl]$ cat page39convert_xml_to_html_simple
#!/usr/bin/perl
use strict ;
use warnings ;

use XML::Simple ;
my $simple = XML::Simple ->new();
my $struct = $simple->XMLin("./symbolconfig.xml") ;
[FEDORA_CASPER@new-host-3 xmlandperl]$ ./page39convert_xml_to_html_simple
not well-formed (invalid token) at line 1, column 5, byte 5 at /usr/lib/perl5/vendor_perl/XML/Parser.pm line 187.
[FEDORA_CASPER@new-host-3 xmlandperl]$
EN

回答 1

Stack Overflow用户

发布于 2015-03-03 22:05:20

通过设计,无效的XML应该是致命的。处理XML应在遇到错误时中止。

当发生这种情况时,大多数用于解析XML的模块都会使用die。您可以通过使用eval块来解决这个问题,但是不能“推送”解析XML,因为XML规范拒绝。

您真正应该做的是反馈给给您XML的人,然后用卷起的文档副本来击打他们的头部。

http://www.w3.org/TR/REC-xml/#dt-fatal

这里有一个XML验证器:validator.asp

此页面还将重新迭代:

XML规范指出,如果程序发现错误,则应停止处理W3C文档。

但是,如果没有XML示例,我只能重复您的错误:not well-formed (invalid token) at line 1, column 5, byte 5

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27461850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档