手机
当前位置:查字典教程网 >网页设计 >Flash教程 >AS3的System类解决歌词中乱码问题
AS3的System类解决歌词中乱码问题
摘要:在做FLASH程序时常常会遇到乱码问题,比如在做一个读取同步歌词文件的程序时载入的全是乱码,这是一个让人很头疼的问题,有的人会说,那怕什么?...

在做FLASH程序时常常会遇到乱码问题,比如在做一个读取同步歌词文件的程序时载入的全是乱码,这是一个让人很头疼的问题,有的人会说,那怕什么?把那个歌词的编码改成UTF-8不就行了吗?但是网站上的下载下来的同步歌词文件大都是ANSI编码的。我们要用的是直接就可以拿来用的。

前面一篇教程讲述的是Flash中解决中文字体的问题。

有很多人写了类来解决这个问题,但写出来的类都很复杂,根本不实用。

那么,难道就没有办法了吗?

当然有,并且这个办法还很简单,我在翻看FLASHCS3的帮助文档时一不小心发现了这个办法(嘿嘿,先自娱一下)。

AS3中有一个System类,只须一个简单的设置就行了。

请看示例:

package {

import flash.system.*;

import flash.display.Sprite;

import flash.net.URLRequest;

import flash.net.URLLoader;

import flash.events.IOErrorEvent;

import flash.events.Event;

import fl.controls.TextArea;

import flash.text.TextFormat;

public class sys extends Sprite {

private var myxml:XML;

private var mytxt:TextArea=new TextArea ;

private var req:URLRequest=new URLRequest("test.txt");

private var ul:URLLoader;

private var tf:TextFormat=new TextFormat ;

public function sys() {

tf.size=14;

tf.color=0xFF0000;

mytxt.setSize(550,400);

addChild(mytxt);

System.useCodePage=true;//解决中文乱码

ul=new URLLoader(req);

ul.addEventListener(IOErrorEvent.IO_ERROR,ioerror);

ul.addEventListener(Event.COMPLETE,loaded);

}

private function loaded(event:Event) {

mytxt.setStyle("textFormat",tf);

myxml=XML(ul.data);

mytxt.text=myxml;

System.setClipboard(mytxt.text);//设置剪贴板文本

}

private function ioerror(event:IOErrorEvent) {

mytxt.text="无相关文件";

}

}

}

这是我写的一个包,具体怎么用,我想大家都会了,文中蓝色字就是解决乱码的了。

在FLASH中System.useCodePage是布尔类型的且默认值为false,用时只要把其值设为true就行了。

【AS3的System类解决歌词中乱码问题】相关文章:

Flash动画轻松转成GIF图片

Flash教程:用AS3代码表现倾斜角与斜率

flash制作一款随着鼠标缩放的按钮

Flash遮罩制作线条逐渐显示的汽车轮廓动画效果

Flash基础:了解动画基础知识

Flash程序如何测试

Flash8简单制作酷炫的星空飞越动画特效

从基础开始深入学Flash AS3教程(7)(译文)

Flash AS 入门教程 多维数组和双重循环使用介绍

AS3教程:Point类计算两点间距离

精品推荐
分类导航