我爬行一个网站,并从它的JSON收集信息。 结果保存在一个散。 但一些页面给我“在JSON字符串格式不正确的UTF-8字符”错误。 我注意到,在“咖啡馆”的最后一个字母会产生误差。 我想这是因为字符类型的混合。 所以,现在我正在寻找一种方式来所有类型的字符转换为UTF-8(希望有一个完美的方式类似)。 我试图UTF8 ::所有,它只是不工作(也许我没有做是正确的)。 我是小白。 请帮忙,谢谢。
UPDATA
好了,经过我读了一篇文章“ 知道字符串和UTF-8字符串之间的区别 ”发布由Brian d FOY。 我解决与代码的问题:
use utf8;
use Encode qw(encode_utf8);
use JSON;
my $json_data = qq( { "cat" : "Büster" } );
$json_data = encode_utf8( $json_data );
my $perl_hash = decode_json( $json_data );
希望这会帮助另外一个人。