首先得导入包import flash.system.System;
AS3中,System.useCodePage 对url编码和escape编码的函数都没有影响了。不论什么设置,都仍然用utf8来处理。
从编码到字符的转换,AS3不能用chr()函数了,只剩下String.fromCharCode()方法了。而这个方法还只支持utf8,不支持别的字符集。
如果需要从gb2312的编码到汉字的转换,需要借助AS3新增的ByteArray类,实现方法如下:
var loader:URLLoader = new URLLoader(new URLRequest("x.html"));
loader.dataFormat = URLLoaderDataFormat.BINARY;
loader.addEventListener(Event.COMPLETE, complete);
function complete(event:Event):void {
var BA:ByteArray = new ByteArray;
BA.writeBytes((event.target as URLLoader).data);
BA.position = 0;
trace(BA.readMultiByte(BA.length,"gb2312"));
}
我的网站设计 web design home page
[url]http://www.webdesign-china.cn[/url]
[url]http://www.webdesign-china.cn[/url]
AS3中,System.useCodePage 对url编码和escape编码的函数都没有影响了。不论什么设置,都仍然用utf8来处理。
从编码到字符的转换,AS3不能用chr()函数了,只剩下String.fromCharCode()方法了。而这个方法还只支持utf8,不支持别的字符集。
如果需要从gb2312的编码到汉字的转换,需要借助AS3新增的ByteArray类,实现方法如下:
var loader:URLLoader = new URLLoader(new URLRequest("x.html"));
loader.dataFormat = URLLoaderDataFormat.BINARY;
loader.addEventListener(Event.COMPLETE, complete);
function complete(event:Event):void {
var BA:ByteArray = new ByteArray;
BA.writeBytes((event.target as URLLoader).data);
BA.position = 0;
trace(BA.readMultiByte(BA.length,"gb2312"));
}
我的网站设计 web design home page
[url]http://www.webdesign-china.cn[/url]
[url]http://www.webdesign-china.cn[/url]