AS3打开本地文件
以前总认为AS3不可以打开本地文件。今日一试,发现可以。附上源码:
package
{
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.net.FileReference;
import flash.utils.ByteArray;
/**
* 事实证明,fileRefence是可以打开本地文件的
*/
public class TestFileRefrence extends Sprite
{
private var file:FileReference;
public function TestFileRefrence()
{
this.stage.addEventListener(MouseEvent.CLICK,function():void
{
file=new FileReference();
file.browse();
file.addEventListener(Event.SELECT,selected);
});
}
private function selected(e:Event):void
{
file.load();
file.addEventListener(Event.COMPLETE,on_loaded);
}
private function on_loaded(e:Event):void
{
var byteArray:ByteArray=ByteArray(e.target.data); //这里非常关键
var loader:Loader=new Loader();
loader.loadBytes(byteArray);
this.addChild(loader);
}
}
}