我有一个问题,我的Perl脚本。 在类UNIX系统中,打印出所有Unicode字符像ä
正确的控制台。 在Windows命令行中,字符被打破,毫无意义的字形。 有没有一种简单的方法来避免这种情况? 我使用的是use utf8;
。
提前致谢。
我有一个问题,我的Perl脚本。 在类UNIX系统中,打印出所有Unicode字符像ä
正确的控制台。 在Windows命令行中,字符被打破,毫无意义的字形。 有没有一种简单的方法来避免这种情况? 我使用的是use utf8;
。
提前致谢。
use utf8;
简单地告诉Perl源使用UTF-8编码。
它不工作在UNIX上无论是。 有一些字符串,将无法正确打印( print chr(0xE9);
),以及做最会打印出“宽字符”警告( print chr(0x2660);
)。 您需要解码的输入和编码您的输出。
在Unix系统中,这是usuaully
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