package { import flash.display.Loader; import flash.display.Sprite; import flash.events.Event; import flash.events.IOErrorEvent; import flash.events.MouseEvent; import flash.net.FileFilter; import flash.net.FileReference; import flash.utils.ByteArray; public class AccessFileData extends Sprite { private var fileRef:FileReference; public function AccessFileData() { fileRef = new FileReference(); fileRef.addEventListener(Event.SELECT, selectFile); fileRef.addEventListener(Event.COMPLETE, openFile); fileRef.addEventListener(IOErrorEvent.IO_ERROR, handleError); stage.addEventListener(MouseEvent.CLICK,stageClick); } private function handleError(evt:IOErrorEvent):void { trace("Error: " + evt); } private function selectFile(e:Event):void { fileRef.load(); } private function openFile(e:Event):void { var data:ByteArray = fileRef.data; var loader:Loader = new Loader(); loader.loadBytes(data); addChild(loader); } private function stageClick(e:MouseEvent):void{ fileRef.browse([new FileFilter("All Formats (*.jpg,*.gif,*.png,*.swf)", "*.jpg;*.gif;*.png;*.swf", "JPEG;jp2_;GIFF;SWFL")]); } } }