求助:perl中怎么把汉字转为\xAAAA的形式?如 :“中文”->"\x4E2D\x6587"

软件和网站开发以及相关技术探讨
回复
头像
mjp123
帖子: 703
注册时间: 2009-04-09 15:06

求助:perl中怎么把汉字转为\xAAAA的形式?如 :“中文”->"\x4E2D\x6587"

#1

帖子 mjp123 » 2011-09-11 17:14

主要是smplayer中,播放列表中文会乱码,发现把汉字改为/xAAAAd的形式显示正常。
不管把播放列表改为何种编码都会乱码。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 求助:perl中怎么把汉字转为\xAAAA的形式?如 :“中文”->"\x4E2D\x6587"

#2

帖子 eexpress » 2011-09-11 19:58

你可以直接看uni2ascii源码。
● 鸣学
头像
mjp123
帖子: 703
注册时间: 2009-04-09 15:06

Re: 求助:perl中怎么把汉字转为\xAAAA的形式?如 :“中文”->"\x4E2D\x6587"

#3

帖子 mjp123 » 2011-09-11 22:22

eexpress 写了:你可以直接看uni2ascii源码。
:em11
谢谢,水平有限。
找到以下方法:

代码: 全选

		my $str1="中文";
		my @chars = split //, $str1;
		my $str2="";  
		foreach (@chars) {  
			$str2.=sprintf "\\x%x", ord($_);  
		}  
回复