如果你想要一个免费的解决方案:
下载Flex SDK,然后下载FlashDevelop
这是完美的编码。
作为安全限制,每次要保存文件时,都会弹出“另存为”对话框,询问用户将其保存在何处。为了加载,在用户输入上,你可以调用FileReference.browse(); You can learn more about this class, here.
此外,您还可以使用AIR来保存文件: (AIR是Flash编译桌面,你不能用它为Web)
import flash.filesystem.*;
import flash.events.Event;
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;
var str:String = "Hello.";
if (!newFile.exists){
var stream:FileStream = new FileStream();
stream.open(newFile, FileMode.WRITE);
stream.writeUTFBytes(str);
stream.close();
}
}
是的,从Flash 10开始,您可以直接从用户的工作站读取文件,当然还有一定的安全限制。 – Cameron 2010-04-06 19:13:53
我不确定这一点,但我认为只要用户点击一个按钮并从他们的机器中选择一个文件,我们就可以使用Flash 10来读取和写入文件。当然涉及安全风险,如果完全不允许,我不会感到惊讶,但是我认为它现在是不确定的。 – user246114 2010-04-06 19:14:20
我从来没有尝试过,但我认为这是可能的,但您需要用Open File ...对话框提示用户。 – 2010-04-06 19:15:41