您的位置主页 > 编程专区 > Php > Perl中将uft-8转换为gb2312的一种方法

Perl中将uft-8转换为gb2312的一种方法

2009-10-31    文章来源:互联网    浏览次数:174

由于项目开发的需要,项目中应用了Perl。我主要用Perl来作为上传文件处理,但是我上传文件到linux服务器时遇到了文件名编码问题,中文文件名上传后为乱码,需要对utf-8的中文字符串转换成gb2312。

  下面是我用来解决字符转换的方法(Perl从5.6开始,内置编码为uft-8):

     my $data = "我是中国人";

  encode("gb2312", decode("utf-8", $data));

     主要思路是先把字符串通过"uft-8"解码[decode()],再将解码后的字符串编码为需要的编码形式[encode()]。

  需要注意的是,在使用decode(),encode()之前得使用use Encode。

文章评论(查看全部)

验证码: 中评 好评 差评