2016-11-16 136 views
0

我使用此代码初始化核心数据:核心数据在哪里保存?

import Cocoa 
import CoreData 

class DataController: NSObject { 
    var persistentContainer: NSPersistentContainer! 
    var context: NSManagedObjectContext! 

    override init() { 
     persistentContainer = NSPersistentContainer(name: "Highlightings") 
     persistentContainer.loadPersistentStores(completionHandler: { (storeDescription, error) in 
      if let error = error as NSError? { 
       fatalError("Unresolved error \(error), \(error.userInfo)") 
      } 
     }) 
     context = persistentContainer.viewContext 
    } 
} 

我如何可以指定一个.sqlite文件,其中核心数据应该保存的数据?

回答

1

可能回到旧方法没有NSPersistentContainer。旧的API尚未被弃用。

如果您使用NSPersistentContainer,则可以使用NSPersistentStoreDescription更改商店位置。类似于

let container = NSPersistentContainer(name: "ContinerName") 

let storeURL = // Initialize to whatever URL you want 
let description = NSPersistentStoreDescription(url: storeURL) 

container.persistentStoreDescriptions = [ description ] 

container.loadPersistentStores(completionHandler: { (storeDescription, error) in 
    // ... 
} 
+0

使用新方法.sqlite文件位于〜/ Library/Application Support/YOURAPPNAME / – Nisba