很抱歉问一个毫无疑问已经被回答过十几次的问题,但我觉得编码问题很困惑,很难将其他人的问答与我的问题匹配起来。
我正在从在线json文件中获取信息,我的perl脚本没有正确处理unicode转义字符。
脚本如下:
use LWP::Simple;
use JSON;
my $url = ______;
my $json = get($url);
my $data = decode_json($json);
foreach my $i (0 .. $#{data->{People}}) {
print "$data->{People}[$i]{first_name} $data->{People}[$i]{last_name}\n";
}
它遇到这样的json: "first_name":"F\u00e9lix","last_name":"Cat"
,并将其打印为FΘlix Cat
。
我相信这里有一个微不足道的修复方法,但我感到困惑。非常感谢您能提供任何帮助。
binmode STDOUT, ":utf8";
即可使其正常工作。 - Håkon Hægland