文字コードとutf8フラグ Perl において、「文字コード」と「utf8フラグ」は別物です。文字コードの話の中で utf8フラグが語られるので、同じもののように思っている人も多いかもしれませんが、別物です。いや、たとえば同じものだとしても、別物だと思った方が理解しやすいと思います。 文字コード は文字とコードのマッピングに名前をつけたもので、utf8フラグは、Perlにおける文字列の扱いに付随するフラグのことです。 たとえば、以下のようなソースコードをレガシーな感じに EUC-JP で書いていたとして、 my $euc_str = 'ソースが EUC-JP なのでここは EUC-JP'; $euc_str には EUC-JP の文字列が格納されています。 これを、utf8フラッグド(utf8 flag on)にしてみます。 use Encode; my $euc_str = 'ソースが