使用Perl创建指定编码格式(如utf-8)的文件

发布时间:2020-10-01编辑:脚本学堂
当Perl读入的源文件是Unicode的utf-8格式时,在使用Perl处理并输出到一个新文件以后,编码格式会自动发生变化。从而使得有些字符(尤其是宽字符)无法正确地显示,即不再是utf-8格式了。

    当Perl读入的源文件是Unicode的utf-8格式时,在使用Perl处理并输出到一个新文件以后,编码格式会自动发生变化。
    从而使得有些字符(尤其是宽字符)无法正确地显示,即不再是utf-8格式了。

解决办法
打开输出文件时即指定编码格式,就不会出现输出文件打开以后乱码的情况了。

普通的默认open输出文件:
 

复制代码 代码如下:
open(OUTPUT,'>>output.txt')||die"can not open the file: $!";

定义指定编码格式文件(或者成为使用Perl创建一个指定编码格式的文件):
 

复制代码 代码如下:
open OUTPUT, ">:encoding(utf-8)", "output.txt";
print OUTPUT $something;
close OUTPUT;