彻底解决乱码升级版

本文介绍了一种在Flash中解决中文乱码问题的有效方法。通过使用URLStream对象的readMultiByte方法,可以确保中文内容正确传输而不出现乱码。此方案适用于使用不同编码方式保存和发送文本的情况。
摘要由CSDN通过智能技术生成

其实这个问题也是可以解决的,在flash里面提供了如何实现代码转换的方法,
txt.wordWrap = true;
var urlloader:URLStream = new URLStream ();
var onComplete:Function = function ( event:Event ):void {
       var str:String = urlloader.readMultiByte ( urlloader.bytesAvailable , "gb2312" );
       var xml:XML = new XML ( str );
       txt.text = xml.toString( );
}
urlloader.addEventListener ( Event.COMPLETE , onComplete );
//具体地址写在这里
//txt里面可能使用gbk等编码方式进行保存和发送的......
//<?xml version="1.0" encoding="gbk" ?>
var req:URLRequest = new URLRequest ("");
urlloader.load (req);

URLStream对象的readMultiByte 方法---------------官方说明:
使用指定的字符集从字节流中读取指定长度的多字节字符串。

参数  length:uint — 要从字节流中读取的字节数。  
  
charSet:String — 表示用于解释字节的字符集的字符串。 可能的字符集字符串包括 "shift_jis"、"CN-GB"、"iso-8859-1"”等。 有关完整列表,请参阅Supported Character 。
注意:如果当前系统无法识别 charSet 参数的值,则 Flash Player 将采用系统的默认代码页作为字符集。 例如,charSet 参数的值(如在使用 01 而不是 1 的 myTest.readMultiByte(22, "iso-8859-01") 中)可能在您的开发计算机上起作用,但在其它计算机上可能不起作用。 在另一台计算机上,Flash Player 将使用系统的默认代码页。

返回  String — UTF-8 编码的字符串。  

引发  EOFError — 可读取的数据不足。  

关键就在于 不是使用URLLoader进行传输,而是使用URLStream进行传输,通过URLStream对象的readMultiByte 方法进行代码转换,这样中文传输就不会有乱码了,
呵呵 这个方法也不是我想到的,是论坛版主教的,也是他昨天叫我发出来的,昨天有事忘记了,趁着早上有点时间,发出来告诉一些和我一样有这个困惑的人吧,如果有不懂得 我会负责解释到懂为止。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值