actionscript 3 -如何在iOs或Android air项目中保存下载的资源到磁盘(AS3)



我知道如何保存txt等文件,但我根本无法在iphone硬盘上保存mp3、jpg或zip文件,我真的不明白为什么…

让我们假设我正在做以下事情:

var btAr:ByteArray = new ByteArray(); //initializing byte array
var snd:Sound = new mp3sound(); //this is an embeeded mp3 file !
snd.extract(btAr,int(mp3sound.length * 44.1) )  //extract the mp3 into a byte array
btAr.position = 0; 
var str:String = File.applicationDirectory.nativePath;  
appTempData = new File(str +"/../tmp");    //temp folder of an iOs app
fr = new FileStream();
try
{
    fr.open(
        appTempData     //  appTempData or appCache or appData or userDocs
        .resolvePath("myCache.mp3"),FileMode.WRITE); 
    fr.writeBytes(btAr)
    fr.close(); 
}
catch(er:Error)
{
    trace("ERROR: "+er);
}

没有错误,没有什么,我只是得到一个空白的mp3文件(0 kb)。

我的目的是从外部服务器下载各种文件,并将它们保存到我的iphone tmp目录…我甚至不关心他们在那一点上是否上膛。我设法在我的iphone内存中下载文件,但我似乎无法将它们保存在我的iphone磁盘上。

灯请吗?

试一试:

 var outFile:File = File.applicationStorageDirectory.resolvePath("myCache.mp3");
 var outStream:FileStream = new FileStream();
 outStream.open(outFile, FileMode.WRITE);
 outStream.writeBytes(btAr);
 outStream.close();

需要保存在applicationStorageDirectory中!

相关内容

  • 没有找到相关文章

最新更新