zoukankan      html  css  js  c++  java
  • 彻底解决乱码

    此文章从蓝色理想转至
    原文链接:http://bbs.blueidea.com/thread-2887754-1-1.html

    彻底解决乱码:
    Flash 5及其之前版本的编码标准是以系统编码为标准的.但Flash MX以后开始支持Unicode,并将Flash Player 6或以上版本预设编码为Unicode,如果Flash载入非Unicode编码时,(比如一个ANSI方式保存的文件)就会出现乱码.
    解决方法有两种:
    第一种是下策,即强迫Flash使用Flash 5的编码方法,在第一帧加入 System.useCodepage = true;这种方法虽然暂时解决了中文系统的乱码问题,但对程序的兼容性和扩展性极为不利.比如:你用的是GB(简体中文)编码的系统,当一个不是用GB编码的系统观看你的Flash时,他看到的依然是乱码.6 |5 z: d! j; ~7 h
    第二种是上策,即利用Unicode编码的一个最常用的实现方法”UTF-8″(Unicode Transformation Format – 8 bit)来实现,最简单的办法就是在保存文件时用编辑软件(比如Windows记事本)保存时在”编码”选项处选择”UTF-8″编码形式,形成文本编码和Flash编码统一.从而消灭乱码.

    可这样不算彻底解决。Flash加载的很多文件都可能不是自己创建的,也不能要求别人也转换编码保存一次啊

    其实这个问题也是可以解决的,在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等编码方式进行保存和发送的……
    //
    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 方法进行代码转换,这样中文传输就不会有乱码了。

  • 相关阅读:
    Flexiframe在SWF中嵌入网页的组件(推荐)
    Flash as3 未在基类中找到默认的构造函数
    flex4 FLVPlayer回去弄下
    SWF 文件不能访问本地资源 只有仅限于文件系统的 SWF 文件和可信的本地 SWF 文件可以访问本地资源[转载]
    本人写的AS3中级程序员面试题
    绕开AS3安全沙箱,跨域加载SWF
    怎样去掉ApplicationControlBar的阴影
    叫你认清这个世界(for编程语言)
    资深HR八年招聘用人心得 给毕业生的实用求职建议
    本人写的AS3高级程序员面试文档(未完成)
  • 原文地址:https://www.cnblogs.com/klh5211314/p/3281862.html
Copyright © 2011-2022 走看看