是否可以在iOS应用中将新文件写入捆绑资源目录?
答案 0 :(得分:14)
没有办法在bundle目录中写入..因为bundle dir是使用SSL证书签名的代码,你不能破解它。但是您可以轻松地在您的iphone应用程序的文档目录中写入
您可以使用此方法获取文档目录路径 -
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
return [paths objectAtIndex:0];
答案 1 :(得分:2)
或者您可以复制所需的资源,然后对具有写入权限的文件进行操作。
NSArray *dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = dirPaths[0];
NSString *databasePath = [documentsDir stringByAppendingString:@"/TwigitDatabase.db"];
NSFileManager *fm = [NSFileManager defaultManager];
if(![fm fileExistsAtPath:databasePath]) { // Checking whether the my database was copied earlier, though it could be saved in some preferences property.
NSError *error;
NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:@"TwigitDatabase" ofType:@"db"];
[[NSFileManager defaultManager] copyItemAtPath:soundFilePath toPath:databasePath error:&error];
NSLog(@"%@", error);
}