将文件保存到sdcard as3 Air for Android

编程入门 行业动态 更新时间:2024-10-28 16:22:08
本文介绍了将文件保存到sdcard as3 Air for Android的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我正在android中使用actionscript 3制作Android应用程序。我需要从服务器下载一个文件并将其保存到移动sdcard。以下是我的代码,该文件从服务器上加载,但我如何将其保存在SD卡?

import flash.filesystem。 *; var urlString:String =www.mywebsite/xyz/myswftodownload.swf; var urlReq:URLRequest = new URLRequest(urlString); var urlStream:URLStream = new URLStream(); var fileData:ByteArray = new ByteArray(); urlStream.addEventListener(ProgressEvent.PROGRESS,onProgress); urlStream.addEventListener(Event.COMPLETE,loaded); urlStream.load(urlReq); 函数加载(event:Event):void { urlStream.readBytes(fileData,0,urlStream.bytesAvailable); trace(Loaded); urlStream.removeEventListener(ProgressEvent.PROGRESS,onProgress); urlStream.removeEventListener(Event.COMPLETE,loaded); //现在如何在SD卡上保存加载的文件? 函数onProgress(evt:ProgressEvent):void { var nPercent:Number = Math.round((evt.bytesLoaded / evt.bytesTotal)* 100); //loadingAnim.bar.scaleX = nPercent / 100; status.text = nPercent.toString()+%;

解决方案

//现在如何将加载的文件保存到SDCARD var file:File = File.userDirectory.resolvePath( myswftodownload.swf); var fileStream:FileStream = new FileStream(); fileStream.open(file,FileMode.WRITE); fileStream.writeBytes(fileData,0,fileData.length); fileStream.close();

File.userDirectory通常指向sdcard(外部存储)。但是请注意,外部存储不必一直都可用(例如,当设备通过USB连接成大容量存储设备时)。在你的情况下,我会考虑使用内部存储,而不是使用File.applicationDirectory或File.applicationStorageDirectory来保存你的swf文件。外部存储是更好的保存文件,如图像,音乐,文件..

I am making an android application in Air for android using actionscript 3. I need to download a file from the server and save it to mobile sdcard. Following is my code, the file gets loaded from the server but how do I save it on sdcard?

import flash.filesystem.*; var urlString:String = "www.mywebsite/xyz/myswftodownload.swf"; var urlReq:URLRequest = new URLRequest(urlString); var urlStream:URLStream = new URLStream(); var fileData:ByteArray = new ByteArray(); urlStream.addEventListener(ProgressEvent.PROGRESS, onProgress); urlStream.addEventListener(Event.COMPLETE, loaded); urlStream.load(urlReq); function loaded(event:Event):void { urlStream.readBytes(fileData, 0, urlStream.bytesAvailable); trace("Loaded"); urlStream.removeEventListener(ProgressEvent.PROGRESS, onProgress); urlStream.removeEventListener(Event.COMPLETE, loaded); //NOW HOW TO SAVE THE LOADED FILE ON SDCARD?? } function onProgress(evt:ProgressEvent):void { var nPercent:Number = Math.round((evt.bytesLoaded / evt.bytesTotal) * 100); //loadingAnim.bar.scaleX = nPercent / 100; status.text = nPercent.toString() + "%"; }

解决方案

You can do something like this

//NOW HOW TO SAVE THE LOADED FILE ON SDCARD var file:File = File.userDirectory.resolvePath("myswftodownload.swf"); var fileStream:FileStream = new FileStream(); fileStream.open(file, FileMode.WRITE); fileStream.writeBytes(fileData, 0, fileData.length); fileStream.close();

File.userDirectory usually points to the sdcard (external storage). But beware of the fact that external storage doesn't have to be available at all time (for example when device connected as mass storage by usb).

In your case i would consider using internal storage instead and use File.applicationDirectory or File.applicationStorageDirectory for saving your swf files. External storage is better for saving files like images, music, documents..

更多推荐

将文件保存到sdcard as3 Air for Android

本文发布于:2023-11-23 15:14:10,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1621901.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:文件   sdcard   Air   Android

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!