Webサイトをクロールし、そのJSONから情報を収集しています。結果はハッシュに保存されます。しかし、一部のページで「JSON文字列の不正な形式のUTF-8文字」エラーが発生します。「cafe」の最後の文字でエラーが発生することに気づきました。キャラクターの種類が混在しているからだと思います。だから今、私はすべてのタイプの文字をutf-8に変換する方法を探しています(そのような完璧な方法があることを願っています)。utf8 :: allを試しましたが、機能しません(正しく実行しなかった可能性があります)。私は初心者です。助けてください、ありがとう。
アップデート
さて、「文字列とUTF-8文字列の違いを知っている」という記事を読んだ後、 briandfoyによって投稿されました。私はコードで問題を解決します:
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 );
これが他の誰かを助けることを願っています。