Perlについての質問箱 15箱目
■ このスレッドは過去ログ倉庫に格納されています
0764デフォルトの名無しさん
05/03/07 07:04:53use Encode;
binmode STDOUT, ":encoding(euc-jp)";
open IN, "< :encoding(shiftjis)","sjis.txt" or die;
としたファイルハンドラINをサブルーチンに渡すところで
またまたつまづいてしまいました。以下
$cnt = Getlines(\*IN);
print $cnt;
exit;
までがメイン。サブルーチンは
sub Getlines {
my $fh = shift;
my $count = 0;
while(<$fh>) {
$count++;
}
return $count;
}
なのですが、実行すると
shiftjis "\x87" does not map to Unicode at unko.pl line 20, <IN> line 829.
shiftjis "\x94" does not map to Unicode at unko.pl line 20, <IN> line 829.
とエラーを吐きます。Perlのバージョンは5.8.5。
サブルーチン内でも文字コード云々の対策が要るのでしょうか。
■ このスレッドは過去ログ倉庫に格納されています