Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS AS3空中本地存储_Ios_Actionscript 3_Air - Fatal编程技术网

iOS AS3空中本地存储

iOS AS3空中本地存储,ios,actionscript-3,air,Ios,Actionscript 3,Air,我正在开发一个需要在设备上安装SQL DB的应用程序。我正在使用File.applicationStorageDirectory和folder.resolvePath添加新的数据库。调试应用程序时,它看起来执行正确,我能够成功地创建一个新表 我在插入和读取记录方面没有走得太远,但我只是想问,当我重新运行应用程序时,现有的DB文件是否会被新的空文件替换?如果是,我需要检查文件是否存在等 如何查看设备上的DB(此阶段的iOS) 谢谢试试这个 若您使用resolvePath,若文件不存在,它将为您创建

我正在开发一个需要在设备上安装SQL DB的应用程序。我正在使用File.applicationStorageDirectory和folder.resolvePath添加新的数据库。调试应用程序时,它看起来执行正确,我能够成功地创建一个新表

我在插入和读取记录方面没有走得太远,但我只是想问,当我重新运行应用程序时,现有的DB文件是否会被新的空文件替换?如果是,我需要检查文件是否存在等

如何查看设备上的DB(此阶段的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文件。

是的,它将被保存,您可以随时访问它。这将适用于任何情况,而不仅仅是数据库(因此通用名称和对象类型)

上述操作将对象
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();
}
然后更新数据并继续编写,如我在第一个代码段中所示

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();
}