我是一位经验丰富的iOS开发人员,正在努力制作我的第一款Mac应用。我想使用Core数据将数据存储在我的应用程序中。在我的iOS应用程序中,我通常有一个预先创建的SQLite文件,该文件用作数据存储的初始状态,并在第一次运行应用程序时移动到位,如下所示:
NSString *storePath = [[self applicationDocumentsDirectory] stringByAppendingPathComponent: @"Datafile.sqlite"];
NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath:storePath]) {
NSString *defaultStorePath = [[NSBundle mainBundle] pathForResource:@"Datafile-DefaultData" ofType:@"sqlite"];
if (defaultStorePath) {
[fileManager copyItemAtPath:defaultStorePath toPath:storePath error:NULL];
}
}
除了将数据放在~/Library/Application Support/MyApp
目录中之外,我想在mac app中做类似的事情。我似乎无法弄明白该怎么做。有什么指针吗?
答案 0 :(得分:0)
在Xcode 4中,默认的Core Data项目模板由于某种原因使用根~/Library
目录(即~/Library/Application
来存储您的Core Data文件。您应该更改此信息(因为它是一个坏主意),但一旦你这样做,它应该按照你的预期工作。我相信Mac上的默认名称是storedata
,你还应该注意到你需要从XML更改商店类型,这是默认值。