其实perl对国际化非常的支持,例如在windows下读入一个gbk(cp936)的文本,然后要转化为utf8的文本输出,代码如下:
use Encode;
use Encode::CN; #最后包含这个包,以为对以后编译有好处。
use PerlIO; # 同上
open(FILE, "<:encoding(gbk)", "gbk.txt"); # 这里自动解码成utf8
@lines = <FILE>;
close(FILE);
open(F, ">:utf8", "utf.txt"); # 自动编码成utf8.
print F @lines;
close(F);
这样可以省得再打开以后在编码。