在我的脚本中,我需要将一些汉字“qw”变成一个字符串。当我运行脚本时, perl表示脚本中存在无法识别的字符。虽然我知道它必须与编码相关的东西有关,但我不知道如何解决它。所以求助于你。
提前感谢。
答案 0 :(得分:12)
在Perl源代码中嵌入文字字符串很简单。使用utf8
编译指示。 (Do not use the encoding
pragma,这是非常有问题的。)
use utf8;
my $perl_string = '你好,张HY';
您的文本编辑器也必须将此文件另存为UTF-8。
然后,如果要输出Perl字符串,则必须先对其进行编码,请参阅perlunitut和perlunifaq。
use Encode qw(encode);
use Encode::HanExtra;
# for example, printing to STDOUT
print encode('UTF-8', $perl_string); # in a Linux environment
print encode('GB18030', $perl_string); # in a Windows environment
我还想告诉大家,自2006年起,中国所有软件产品都必须支持国家标准GB18030 - 您必须从CPAN安装Encode::HanExtra。