0
当应用程序启动时,将其复制到您的文档目录。 假设您的sqlite数据库在您的项目中,您可以使用下面的代码将数据库复制到您的文档目录。我们还假设你的数据库被称为mydb.sqlite。如何创建包含在iPhone Xcode项目中的sqlite数据库的可写副本?
//copy the database to documents
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"mydb.sqlite"];
if(![fileManager fileExistsAtPath:path])
{
NSData *data = [NSData dataWithContentsOfFile:[[[NSBundle mainBundle] resourcePath] stringByAppendingString:@"/mydb.sqlite"]];
[data writeToFile:path atomically:YES];
}
任何人都知道的一种更好的方式来做到这一点。这似乎工作...
这样好多了,因为它不会将整个数据库先复制到内存中! – 2010-03-18 02:40:28
你说得对。我认为它可能很小,因为我所有的SQLite数据库都很小。但在这种情况下,它并没有伤害到我。 :) – 2010-03-18 03:02:37