Perl スクリプトに問題があります。UNIX ライクなシステムでは、すべての Unicode 文字をä
適切にコンソールに出力します。Windows コマンドラインでは、文字が無意味なグリフに分割されます。これを回避する簡単な方法はありますか?を使用してuse utf8;
います。
前もって感謝します。
Perl スクリプトに問題があります。UNIX ライクなシステムでは、すべての Unicode 文字をä
適切にコンソールに出力します。Windows コマンドラインでは、文字が無意味なグリフに分割されます。これを回避する簡単な方法はありますか?を使用してuse utf8;
います。
前もって感謝します。
use utf8;
ソースが UTF-8 を使用してエンコードされていることを Perl に伝えるだけです。
UNIXでも動作しません。正しく印刷されない文字列がいくつかあり ( print chr(0xE9);
)、印刷されるほとんどの文字列では、「ワイド文字」の警告が表示されます ( print chr(0x2660);
)。入力をデコードし、出力をエンコードする必要があります。
UNIX システムでは、通常は
use open ':std', ':encoding(UTF-8)';
Windows システムではchcp
、コンソールのキャラクター ページを見つけるために を使用する必要があります。(私にとっては437です。)
use open ':std', ':encoding(cp437)'; # Encoding used by console
use open IO => ':encoding(cp1252)'; # Encoding used by files