ActionScript在处理网页内容或者一些文字信息时,经常会遇到一些字符编码的转换,这里给出了一个简单的字符编码转换的类。
package com
{
import flash.utils.ByteArray;
public class SuperStr
{
public function str2unicode(str:String):String //字符串转换为unicode编码
{
return uniBigEnd2uni(str2uniBigEnd(str));
}
public function str2uniBigEnd(ori:String):String//字符串转换为uniBigEnd编码
{
var str:String = "";
for (var i:int=0; i<ori.length; i++)
{
if (ori.charCodeAt(i).toString(16).length < 4)
{
str = str + "00" + ori.charCodeAt(i).toString(16);
}
else
{
str = str + (ori.charCodeAt(i).toString(16));
}
}
return str;
}
public function uniBigEnd2uni(ori:String):String//uniBigEnd编码转换为unicode编码
{
var str1:String;
var str:String;
var ori_arr:Array = new Array();
ori_arr = ori.match(/../g);
for (var i:int=0; i<ori_arr.length; i++)
{
if (i % 2 == 0)
{
str = ori_arr[i];
ori_arr[i] = ori_arr[i + 1];
ori_arr[i + 1] = str;
}
}
str1 = (ori_arr.toString()).replace(/,/g,"");
return str1;
}
public function str2utf8(str:String):String//字符串转换为utf8编码
{
var str_new:String = "";
var byte:ByteArray = new ByteArray();
byte.writeMultiByte(str,"UTF-8");
for (var i:int=0; i<byte.length; i++)
{
str_new = str_new + byte[i].toString(16);
}
return str_new;
}
}
}
源文件可以从这里下载: http://download.csdn.net/detail/u012416063/6414369