如何找到iPhone / iPad设备或iPhone / iPad模拟器的数据库路径?

时间:2011-08-01 14:17:17

标签: database sqlite

我正在使用本地sqlite3数据库,我需要找到它的路径,以便我可以打开一个连接。设备/模拟器的路径是否不同?我怎样才能找到它们?

2 个答案:

答案 0 :(得分:1)

这取决于您在iphone应用程序中创建数据库的位置。 我创建的方式是在沙盒的Documents文件夹下,并且两个路径的路径始终相同。

NSString *databaseName = @"mainDB.sqlite";
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [documentPaths objectAtIndex:0];
databasePath = [documentsDir stringByAppendingPathComponent:databaseName];

所以数据库的路径是/ Library / Application Support / iPhone Simulator / 4.2 / Applications // Documents / mainDB.sqlite

答案 1 :(得分:0)

要打开捆绑包中的数据库,您可以执行以下操作:

sqlite3 *_database;

NSString *path = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"yourDbName.extension"];

sqlite3_open_v2([path UTF8String], &_database, SQLITE_OPEN_READONLY, NULL);