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