我曾经使用FMDB从文件中读取sqlite数据。
/MERGETASKS
现在我要加密文件。当应用程序打开时,它会将文件解密为NSData对象。
FMDatabase *db = [FMDatabase databaseWithPath:filePath];
有什么方法可以从NSData获取FMDatabase对象?我不想将NSData保存到文件中,因为它已被解密。
答案 0 :(得分:0)
我认为FMDatabase
和 SQLite 通常与文件系统相关,这意味着默认情况下可能无法执行此操作。
我猜你的选择:
为加密的NSData
使用单独的文件,为解密的 SQLite 数据库使用另一个文件 - 但此解决方案失去了获得第一个文件的任何好处
将NSData
存储在一个文件中,并使用临时或内存 SQLite 数据库(请参阅https://github.com/ccgus/fmdb#database-creation),您需要在启动时导入数据关闭时导出
使用系统级Security
内容的更复杂的方法,但我对此没有任何经验