iOS – 如何更改文档目录

目前我正在使用的程序使用核心数据,并将“帐户”信息存储在一个名为Accounts.sqlite文件中。该文件存储在Documents目录里面的长string中,即A89C1398-A7BE-44F1-A337-DABA9C66AF1D So我想在/var/mobile/Library/KegCop保存/创build应用程序的文件我发现这个问题 ,我做了必要的修改,删除了我的应用程序,点击Xcode中的Runbutton,运行良好。 但是Accounts.sqlite文件仍然在Documents目录中。

我添加/修改了下面的代码到AppDelegate.m文件,

 // default sqlite file path // NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"Accounts.sqlite"]; // jailbroken path - /var/mobile/Library/KegCop/ NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *docPath = [documentPaths objectAtIndex:0]; NSURL *storeURL = [NSURL fileURLWithPath: [docPath stringByAppendingPathComponent:@"Accounts.sqlite"]]; 

然后在AppDelegate.m文件中创build下面的方法,

 // set path for documents in jailbreak environment +(NSString *)documentsDirectoryPath { #ifdef JAILBREAK NSString *documentPath =@"/var/mobile/Library/KegCop"; if (![[NSFileManager defaultManager] fileExistsAtPath:documentPath]) { [[NSFileManager defaultManager] createDirectoryAtPath:documentPath withIntermediateDirectories:NO attributes:nil error:NULL]; } return documentPath; #else NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); return [documentPaths objectAtIndex:0]; #endif }