我找到了下面的代码片段,可以使用 Adobe AIR 将图像保存到特定文件夹。
如何修改它"Save As"操作系统窗口首先出现? (因此用户可以选择将图像保存在硬盘驱动器上的位置)
var arrBytes:ByteArray = PNGEncoder.encode(bmd);
var file:File = File.desktopDirectory.resolvePath(folderName + "/" + fileName + fileNum + ".png");
var fileStream:FileStream = new FileStream();
//
fileStream.open(file, FileMode.WRITE);
fileStream.writeBytes(arrBytes);
fileStream.close();
谢谢。
最佳答案
使用 File.browseForSave :
import flash.filesystem.*;
import flash.events.Event;
import flash.utils.ByteArray;
var imgBytes:ByteArray = PNGEncoder.encode(bmd);
var docsDir:File = File.documentsDirectory;
try
{
docsDir.browseForSave("Save As");
docsDir.addEventListener(Event.SELECT, saveData);
}
catch (error:Error)
{
trace("Failed:", error.message);
}
function saveData(event:Event):void
{
var newFile:File = event.target as File;
if (!newFile.exists) // remove this 'if' if overwrite is OK.
{
var stream:FileStream = new FileStream();
stream.open(newFile, FileMode.WRITE);
stream.writeBytes(imgBytes);
stream.close();
}
else trace('Selected path already exists.');
}
manual永远是你的 friend :)
顺便说一句,我看到你在这里相对较新 - 欢迎来到 StackExchange!如果您觉得我的回答有帮助,请务必选择它作为答案。
关于actionscript-3 - Adobe AIR - 在硬盘驱动器上保存图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7715570/