標籤:唯讀 靜態 ons close 資料 txt directory open nbsp
AIR的檔案目錄靜態類型有五種:
File.userDirectory //指向使用者檔案夾 File.documentsDirectory //指向使用者文檔檔案夾 File.desktopDirectory //指向案頭 File.applicationStorageDirectory //指嚮應用程式儲存目錄 File.applicationDirectory //應用程式安裝目錄
applicationDirectory目錄下的檔案為唯讀屬性,所以直接對applicationDirectory目錄下檔案進行操作是無效的(除讀取),會報安全箱錯誤
讀取檔案方法是:
File.applicationDirectory.resolvePath(‘read.xml‘);
但為了對applicationDirectory目錄下的檔案進行操作。可以通過這樣的方式來操作,擷取file發布原始目錄再添加目標路徑,如下
var file:File=new File(File.applicationDirectory.nativePath + ‘/read.xml‘);file.deleteFile();
讀取檔案,如果沒有該檔案,自動建立,唯讀屬性目錄路徑除外,需特殊如上面的操作
var file:File =File.documentsDirectory.resolvePath("HelloWorld.txt");var stream:FileStream = new FileStream()stream.open(file, FileMode.WRITE);var str:String = "Congratulations on AIR Save Path";stream.writeUTFBytes(str);stream.close();
解析檔案
private var nowWriteNum:uint = 0;private var stream:FileStream;private function newFileToApp():void{nowWriteNum++;if (nowWriteNum <= zipNum){var tempNum:uint = nowWriteNum - 1;if (zipData_arr[tempNum][1].split("").splice( -1) == "/"){if (!zipData_arr[tempNum][2].exists){zipData_arr[tempNum][2].createDirectory();newFileToApp();}}else{ stream= new FileStream(); stream.open(zipData_arr[tempNum][2], FileMode.WRITE); stream.addEventListener(Event.COMPLETE, writeComHdl); stream.writeBytes(zipData_arr[tempNum][0]); }}else{trace("寫入資料 完畢");}}
as3 AIR 添加或刪除ApplicationDirectory目錄下檔案