[英]iOS AS3 AIR local storage
我正在開發一個需要設備上具有SQL DB的應用程序。 我正在使用File.applicationStorageDirectory和folder.resolvePath添加新的數據庫。 在調試該應用程序時,一切看起來都像在正確執行,並且我能夠成功創建一個新表。
我在插入和讀取記錄方面還不算太過分,但是我只是想問一下,當我重新運行該應用程序時,現有的數據庫文件是否被替換為一個新的空文件? 如果是這樣,我需要檢查文件是否存在等。
如何查看設備上的數據庫(現階段為iOS)?
謝謝
試試這個
如果您使用resolvePath如果文件不存在,則為您創建文件,否則它將保持原樣。如果使用resolvepath,則覆蓋永遠不會發生。
要么
如果要通過以下方式檢查是否已經存在
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)上查看db文件。
是的,它將被保存,您可以隨時訪問它。 這將適用於任何事物,而不僅僅是數據庫(因此通用名稱和對象類型)
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();
上面將把Object 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();
}
然后,您更新數據並按照我在第一個代碼段中顯示的進行操作
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.