将sqlite数据库复制到用户目录

前端之家收集整理的这篇文章主要介绍了将sqlite数据库复制到用户目录前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

sqlite如何在IOS开发中应用是本文要介绍的内容,主要是来学习在IOS开发sqlite数据库的使用方法sqlite数据库初始化,复制到用户目录,并判断是否数据库已经存在,或者复制是否成功!

在AppDelegate.m中输入以下代码,以便复制预置数据库到指定doucment目录

  1. -(BOOL)initializeDb{
  2. NSLog(@”initializeDB”);
  3. //looktoseeifDBisinknownlocation(~/Documents/$DATABASE_FILE_NAME)
  4. //START:code.DatabaseShoppingList.findDocumentsDirectory
  5. NSArray*searchPaths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
  6. NSString*documentFolderPath=[searchPathsobjectAtIndex:0];
  7. //查看文件目录
  8. NSLog(@”%@”,documentFolderPath);
  9. dbFilePath=[documentFolderPathstringByAppendingPathComponent:@"shopping.db"];
  10. //END:code.DatabaseShoppingList.findDocumentsDirectory
  11. [dbFilePathretain];
  12. //START:code.DatabaseShoppingList.copyDatabaseFileToDocuments
  13. if(![[NSFileManagerdefaultManager]fileExistsAtPath:dbFilePath]){
  14. //didn’tfinddb,needtocopy
  15. NSString*backupDbPath=[[NSBundlemainBundle]pathForResource:@”shopping”ofType:@”db”];
  16. if(backupDbPath==nil){
  17. //couldn’tfindbackupdbtocopy,bail
  18. returnNO;
  19. }else{
  20. BOOLcopiedBackupDb=[[NSFileManagerdefaultManager]copyItemAtPath:backupDbPathtoPath:dbFilePatherror:nil];
  21. if(!copiedBackupDb){
  22. //copyingbackupdbFailed,bail
  23. returnNO;
  24. }
  25. }
  26. }
  27. returnYES;
  28. //END:code.DatabaseShoppingList.copyDatabaseFileToDocuments
  29. NSLog(@”bottomofinitializeDb”);
  30. }
  31. -(void)applicationDidFinishLaunching:(UIApplication*)application{
  32. //copythedatabasefromthebundleifnecessary
  33. if(![selfinitializeDb]){
  34. //TODO:alerttheuser!
  35. NSLog(@”couldn’tinitdb”);
  36. return;
  37. }
  38. //Addthetabbarcontroller’scurrentviewasasubviewofthewindow
  39. [windowaddSubview:tabBarController.view];
  40. }

猜你在找的Sqlite相关文章