是的,我現在就這樣做。如果需要,我可以給你更多的例子,但這裏是我做的:
- 在Mac上通過sqlite3創建數據庫。
- 將在應用程序的包
- 在應用程序啓動數據庫,如果數據庫不在應用程序的文檔文件夾,從包複製到那裏
- 從應用程序的包中使用該數據庫。
或者,您可以從網上下載,而不是執行第2步和第3步 - 但我只會在非常大的情況下執行此操作,並且在應用程序加載時可能不會立即可用。
內的applicationDidFinishLaunching:
NSFileManager *fm = [[NSFileManager alloc] init];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *mapPath = [documentsDirectory stringByAppendingPathComponent: @"datafile.sqlite" ];
if (![fm fileExistsAtPath:mapPath]) {
// Does Not Exist!!
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"datafile" ofType:@"sqlite" inDirectory:@"datafiles"];
NSData *myData = [NSData dataWithContentsOfFile:filePath];
if (myData)
[fm createFileAtPath:mapPath contents:myData attributes:nil];
}
聽起來很有趣,會檢查出來。 – James 2010-10-27 17:08:10
不要猶豫,投票 – vikingosegundo 2010-10-27 17:11:48