我正在開發一個需要設備上的SQL DB的應用程序。我正在使用File.applicationStorageDirectory和folder.resolvePath來添加一個新的數據庫。當調試應用程序時,它看起來像它正確執行,我能夠成功地創建一個新的表。iOS AS3 AIR本地存儲
我沒有太多的插入和讀取記錄,但我只是想問,當我重新運行應用程序時,現有的數據庫文件被替換爲一個新的空的嗎?如果是這樣,我需要檢查文件是否存在等。
如何查看設備上的數據庫(此階段的iOS)?
感謝
我正在開發一個需要設備上的SQL DB的應用程序。我正在使用File.applicationStorageDirectory和folder.resolvePath來添加一個新的數據庫。當調試應用程序時,它看起來像它正確執行,我能夠成功地創建一個新的表。iOS AS3 AIR本地存儲
我沒有太多的插入和讀取記錄,但我只是想問,當我重新運行應用程序時,現有的數據庫文件被替換爲一個新的空的嗎?如果是這樣,我需要檢查文件是否存在等。
如何查看設備上的數據庫(此階段的iOS)?
感謝
如果您使用與resolvePath如果文件不存在,它爲您創建否則就離開,如果你使用與resolvePath它is.Overwrite永遠不會發生這種
嘗試。
OR
如果你想檢查是否通過
已經存在 if(dbFile.exist)
trace('File already exists');
使用此
var dbFile:File = new File("app-storage:/" + "localdb.db");
sqlConnection = new SQLConnection();
sqlConnection.addEventListener(SQLEvent.OPEN, onAuthorDatabase_OpenHandler);
sqlConnection.addEventListener(SQLErrorEvent.ERROR, onSQLErroHandler);
sqlConnection.openAsync(dbFile);
我不知道怎麼樣看待設備存儲位置數據庫文件(iOS版)。
是的,它將被保存,您可以隨時訪問它。這對於任何工作,而不僅僅是數據庫(因此通用名稱和對象類型)
var file:File = File.applicationStorageDirectory.resolvePath("file.path");
var obj:Object = { someRandom:"data" };
var fs:FileStream = new FileStream();
fs.open(file, FileMode.WRITE);
fs.writeObject(obj);
fs.close();
以上將對象obj
寫入設備。請記住,這不會更新該文件,它會覆蓋該文件。要更新文件,這樣做:
var file:File = File.applicationStorageDirectory.resolvePath("file.path");
if (file.exists) {
var fs:FileStream = new FileStream();
fs.open(file, FileMode.READ);
var obj:Object = fs.readObject();
fs.close();
}
然後更新您的數據,然後繼續寫我在第一個片段顯示