Perlについての質問箱 24箱目
■ このスレッドは過去ログ倉庫に格納されています
0143デフォルトの名無しさん
2006/05/05(金) 23:07:195.8.8に乗り換えようと思っているのですが、
とあるスクリプトが動かなくて苦労しています。
--------------------------------------------
use encoding "cp932";
#5.8.4だと、cp932でopenできる
#use open ":encoding(cp932)";
#5.8.7以降だと、shift-jisと書かないとダメ
use open ":encoding(shift-jis)";
use strict;
my $str = "";
$str = "テスト";
print "$str\n";
print length($str), "\n";
--------------------------------------------
5.8.4までだと、
use open ":encoding(cp932)";
と書けたのですが、5.8.7と5.8.8だと、
use open ":encoding(shift-jis)";
と書かないと、
Wide character in print at testcode.pl line 6.
と出て、文字化けしてしまいます。
cp932というコードセットは、うまく使えない仕様になってしまったのでしょうか。
そのくせ、
use encoding "cp932";
は通るのだから、よく分からない。。。use open時のバグかな?
■ このスレッドは過去ログ倉庫に格納されています