【问题标题】:Where Core Data is saving?Core Data 在哪里保存?
【发布时间】:2016-11-16 13:01:52
【问题描述】:

我使用这段代码来初始化 Core Data:

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 文件,Core Data 应该在其中保存数据?

【问题讨论】:

    标签: swift sqlite core-data


    【解决方案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
        // ...
    }
    

    【讨论】:

    • 使用新方法,.sqlite 文件位于 ~/Library/Application Support/YOURAPPNAME/
    猜你喜欢
    • 1970-01-01
    • 2021-02-21
    • 2011-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-29
    相关资源
    最近更新 更多