Flex读取外部XML中文乱码解决办法

用URLLoader加载XML,然后将data转化为ByteArray
用byteArray.readMultiByte(bytes.length,"utf-8")
然后将转化后的字符串再强制转化为XML

var urlLoader:URLLoader=new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
//dataFormat : String = "text" 控制是以文本 (URLLoaderDataFormat.TEXT)、原始二进制数据 (URLLoaderDataFormat.BINARY) 还是 URL 编码变量 (URLLoaderDataFormat.VARIABLES) 形式接收下载的数据。

urlLoader.addEventListener(Event.COMPLETE,onComplete); urlLoader.load(
new URLRequest("C:/Users/Administrator/Desktop/王一名/xml.xml"));

private function onComplete(event:Event):void
   {
    var bytes:ByteArray = ByteArray(event.currentTarget.data);
    var xmlStr:String = bytes.readMultiByte(bytes.length,"utf-8");
    var xml:XML = XML(xmlStr);
    this.img.source=xml.item[1].@url;
   }

 

posted @ 2013-08-21 16:23  丶灬0玖0柒丨  阅读(250)  评论(0)    收藏  举报