AS3 / AIR,通过按保存按钮生成.txt文件,不带对话框



这是一个通过Adobe Air部署在Android设备中的Flash应用程序。我正在尝试将用户的用户名和分数(boxTwo.text + _clickTxt.text)保存在记事本.txt文件中,而Android设备中不会出现任何对话框。一旦按下保存按钮(btnSave),它将生成。我无法让它工作。谢谢!这是我的代码:

import flash.net.FileReference;
import flash.events.Event;
var so:SharedObject = SharedObject.getLocal("Test");
var f:File=new File("pathtofile.txt")
var str:FileStream=new FileStream();
btnSave.addEventListener(MouseEvent.CLICK, onClick);
function onClick(e:MouseEvent):void
{
    so.data.saveData = currentFrame;
    so.flush();
}
btnSave.addEventListener (MouseEvent.CLICK, saveFile)
function saveFile(evt):void
{
    str.open(f, FileMode.WRITE);
    str.writeUTFBytes(boxTwo.text + _clickTxt.text);
    str.close();
}

默认情况下,Adobe Air 不允许将文件写入任何目录您只能获得以下内容的写入访问权限:

  • 文件.文档目录
  • File.applicationStorageDirectory
  • 通过"browseForDirectory()"对话框选择的目录

    fileVariable.browseForDirectory("选择一个目录");

(每个平台还有其他特定于的目录,但通常是这 3 种类型)因此,只需将路径更改为允许的目录即可

    var string:String = "Text";
    var file:File = File.documentsDirectory.resolvePath("myTxtFile.txt");
    var stream:FileStream = new FileStream();
    stream.open(file, FileMode.WRITE);
    stream.writeUTFBytes(string);
    stream.close();

最新更新