服务器端传送变量或url交互,涉及到编码的问题,utf-8与gb2312间转码
例:
var blogStr:String = “我是中文”
进行URL编码转义,unicode编码
blogStr = escape(blogStr)
trace(blogStr)
对URL进行解码为ASCII字符
trace(unescape(blogStr));
相关函数参考:
escape(expression:String) : String
将参数转换为字符串,并以 URL 编码格式对其进行编码,在这种格式中,所有非字母数字的字符都替换为 % 十六进制序列。当用于 URL 编码的字符串中时,百分号 (%) 用于引入转义符,不与模运算符 (%) 等效。
unescape(string:String) : String
将参数 x 作为字符串计算,将该字符串从 URL 编码格式解码(将所有十六进制序列转换为 ASCII 字符),并返回该字符串。
需要注意的问题是,flash内部使用utf-8编码格式进行文本处理,所以从外部载入文件例如xml,如果是中文就需要使用utf-8编码实现,使用 gb2312时,设置system.useCodepage=true来通知Flash Player 使用运行播放器的操作系统的传统代码页来解释外部文本文件,但又有一个问题是,如果操作系统本身是英文或其使用的编码不支持中文字符呢?这个在帮助文档中找到了答案:
(more…)