Encode::Guessでファイルのエンコーディングを自動判別するのは便利なんですが、
open my $fh, "<:encoding(Guess)", "foo.txt";
while( <$fh> ) {
...
}
close $fh;
のようにしたとき、これって行ごとの判定になるのでしょうか?
短い行で、euc-jp
とUTF-8
が判別されなくて困りました。仕方が無いので、ファイルをslurp
してから行ごとに分割することに。
まぁファイル自体はサイズが小さいので問題は無かったんですが。うーん、きっとうまい方法があるのだろうなぁ。