FileReference类中loadBtyes()的用法是什么

时间:2013-08-30 19:06:17

标签: actionscript-3 flash flex

我需要在AS3.0中使用FileReference Class的功能。但是,我不了解需要使用ByteArray的部分。据我了解,FileReference只需要选定的文件,它应该自动存储数据。但是按照以下过程,再次需要第二步,其中fileReference数据被分配给ByteArray类型的变量,并再次加载。这需要的第二步是什么?为什么数据不会存储在一个步骤中?

private function fileReference_SELECT(e:Event):void
        {
            fileRef_Fr.removeEventListener(Event.SELECT, fileRef_Fr_SELECT);
            fileRef_Fr.addEventListener(Event.COMPLETE, fileReference_COMPLETE);
            fileRef_Fr.load();

        }   


  private function fileReference_COMPLETE(e:Event):void
            {
                fileRef_Fr.removeEventListener(Event.COMPLETE, fileRef_Fr_load_COMPLETE);
                var rawBytes:ByteArray = fileRef_Fr.data;
                loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
                loader.contentLoaderInfo.addEventListener(Event.COMPLETE, contentLoaderInfo_COMPLETE)
                loader.loadBytes(rawBytes);
            }

1 个答案:

答案 0 :(得分:2)

第一步只将文件中的原始字节加载到内存中。第二步读取/解析/将这些字节转换为BitmapSoundMovieClip或文件中包含的任何内容。