我尝试了谷歌和StackOverflow推荐的所有方法(我能找到的),包括使用Encode。我的代码已经可以工作,但它只使用UTF8并且会出现宽字符警告。我知道如何解决这些警告,但我没有在其他地方使用UTF8,因此我想转换它,而不必修改我的代码以适应它。以下是我的代码:
my $xml = XMLin($content);
# Populate the @titles array with each item title.
my @titles;
for my $item (@{$xml->{channel}->{item}}) {
my $title = Encode::decode_utf8($item->{title});
#my $title = $item->{title};
#utf8::downgrade($title, 1);
Encode::from_to($title, 'utf8', 'iso-8859-1');
push @titles, $title;
}
return @titles;
注释掉的部分是我尝试过的其他一些方法。我很清楚我在这里并不知道我在做什么。但我只想最终得到一个普通的ASCII字符串。任何想法都将不胜感激。谢谢。