perl print 中的乱码主要有两方面的原因,一是文件的编码格式,二是终端的编码格式
终端环境是UTF-8,文本也是UTF-8,那么如下脚本可正常输出:
use strict;
use encoding "utf-8";
open(FH, "<:utf8", "abc.txt") or die $!;
while(<FH>) {
print;
}
close FH;
终端环境是UTF-8,文本也是UTF-8,需要改成下面这样
use strict;
use Encode;
open(FH, "<:utf8", "abc.txt") or die $!;
while(<FH>) {
print encode("gb2312",$_);
}
close FH;
本文介绍了解决Perl脚本中打印乱码的问题。主要从文件编码格式和终端编码格式两个方面进行探讨,并提供了具体的Perl脚本示例来展示如何正确处理不同编码格式的文本文件。
3007

被折叠的 条评论
为什么被折叠?



