Img下载和;保存....模块应用程序中的不同行为....

时间:2014-02-20 21:25:57

标签: actionscript-3 flex air

我开发了一段时间以前的应用程序。将图像下载到AIR桌面上,工作得非常好!但是当我想在一个大型AIR应用程序中的一个模块中使用它时,我已经完成了这个过程。因为FileStream没有向SAVE开放。

所以我建立另一个应用程序。使用我保存的一个DB代码(如下所示),该代码一旦包含在App中就没有错误消息带有FileStream问题。使用模块但这次出现的错误是(错误#2044;未处理的IOErrorEvent:text =错误#2035:未找到URL)。

我想不出为什么这不应该工作或更好为什么FileStrems没有打开或为什么在这种情况下找不到URL?因为它们在自己的应用程序中都可以正常工作。

任何帮助将不胜感激!关于aktell

.......................................................................................
creationComplete="loadRemoteImage(textInputOne.text)">

<mx:Script>
    <![CDATA[

        import mx.graphics.codec.JPEGEncoder;

        private var _bitmapDataOne:BitmapData;

        private function loadRemoteImage(url:String):void {

            var loaderOne:Loader = new Loader();

            loaderOne.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
            loaderOne.load(new URLRequest(url));
        }

        private function completeHandler(event:Event):void {

            var loaderInfoOne:LoaderInfo = event.target as LoaderInfo;
            imgOne.source = loaderInfoOne.content;

            var bitmapOne:Bitmap = loaderInfoOne.content as Bitmap;
            _bitmapDataOne = bitmapOne.bitmapData;


            saveImage();
        }

        private function saveImage():void {

            var extensionOne:String;
            var imgByteArrayOne:ByteArray;

            if(textInputOne.text.indexOf('.jpg') != -1) {

                var jpegEncoderOne:JPEGEncoder = new JPEGEncoder(100);
                imgByteArrayOne = jpegEncoderOne.encode(_bitmapDataOne);
                extensionOne = '.jpg';
            }
            else
                return;

            var fileOne:File = File.desktopDirectory.resolvePath('Files/test'+ extensionOne);
            var fileStreamOne:FileStream = new FileStream();

            fileStreamOne.open(fileOne, FileMode.WRITE);
            fileStreamOne.writeBytes(imgByteArrayOne);

            fileStreamOne.close();
        }
    ]]>
</mx:Script>

<mx:TextInput 
    id="textInputOne"
    text="com/waterfront.jpg"
    visible="false"/>

<mx:SWFLoader 
    id="imgOne"/>

0 个答案:

没有答案