Sqlite如何在IOS开发中应用是本文要介绍的内容,主要是来学习在IOS开发中sqlite数据库的使用方法。sqlite数据库初始化,复制到用户目录,并判断是否数据库已经存在,或者复制是否成功!
在AppDelegate.m中输入以下代码,以便复制预置数据库到指定doucment目录
- (BOOL) initializeDb {
NSLog (@"initializeDB");
// look to see if DB is in known location (~/Documents/$DATABASE_FILE_NAME)
//START:code.DatabaseShoppingList.findDocumentsDirectory
NSArray *searchPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentFolderPath = [searchPaths objectAtIndex: 0];
//查看文件目录
NSLog(@"%@",documentFolderPath);
dbFilePath = [documentFolderPath stringByAppendingPathComponent:@"shopping.db"];
//END:code.DatabaseShoppingList.findDocumentsDirectory
[dbFilePath retain];
//START:code.DatabaseShoppingList.copyDatabaseFileToDocuments
if (! [[NSFileManager defaultManager] fileExistsAtPath: dbFilePath]) {
// didn't find db, need to copy
NSString *backupDbPath = [[NSBundle mainBundle] pathForResource:@"shopping" ofType:@"db"];
if (backupDbPath == nil) {
// couldn't find backup db to copy, bail
return NO;
} else {
BOOL copiedBackupDb = [[NSFileManager defaultManager] copyItemAtPath:backupDbPath toPath:dbFilePath error:nil];
if (! copiedBackupDb) {
// copying backup db failed, bail
return NO;
}
}
}
return YES;
//END:code.DatabaseShoppingList.copyDatabaseFileToDocuments
NSLog (@"bottom of initializeDb");
}
- (void)applicationDidFinishLaunching:(UIApplication *)application {
// copy the database from the bundle if necessary
if (! [self initializeDb]) {
// TODO: alert the user!
NSLog (@"couldn't init db");
return;
}
// Add the tab bar controller's current view as a subview of the window
[window addSubview:tabBarController.view];
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
小结:详解Sqlite如何在IOS开发中应用的内容介绍完了,希望本文能对你有所帮助!