这是一个通过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();