Xml 对perl感到困惑';下午二时三十分

Xml 对perl感到困惑';下午二时三十分,xml,perl,encoding,Xml,Perl,Encoding,好吧,我有点困惑 我正在尝试为一个用utf8编码的iPhone应用程序创建一个提要 我们的西班牙语内容中有许多拉丁字符(accute等)。我使用entities.pm库中的decode_entities函数,但是我注意到它转换成的字符值正在破坏我的提要——我的意思是提要无效,即使标题字段周围有CDATA标记。经过进一步调查,我发现这个库正在从html实体转换为相应的unicode值,但它使用的是ISO-8859而不是utf8 如何将html实体转换为utf8 use Encode; use HT

好吧,我有点困惑

我正在尝试为一个用utf8编码的iPhone应用程序创建一个提要

我们的西班牙语内容中有许多拉丁字符(accute等)。我使用entities.pm库中的decode_entities函数,但是我注意到它转换成的字符值正在破坏我的提要——我的意思是提要无效,即使标题字段周围有CDATA标记。经过进一步调查,我发现这个库正在从html实体转换为相应的unicode值,但它使用的是ISO-8859而不是utf8

如何将html实体转换为utf8

use Encode;
use HTML::Entities;

my $x = decode_utf8(decode_entities("α — ω"));

binmode STDOUT, ":utf8";
print $x;

(如果直接打印$x,将出现“打印中的宽字符”警告)

所以问题不是Entities.pm,而是我用来打开文件的格式。我想当然地认为Perl会自动以Utf-8打开文件

我在文件顶部添加了下面的行,提要现在被认为是有效的:

使用open':编码(utf8)'