Core Data使用之一(Swift): 保存
Core Data 用于永久化数据,它是基于SQLite数据库的保存一门技术。
那么,在Swift中,它是如何实现的呢?
首先,需要新建一个模板,打开工程中的xcdatamodeld文件,点击“Add Entity” ,这时候,就创建的一个模板。之后,可以修改模板的名称为自己想要的名称。然后,在Attributes里面,点击“+”,添加字段并修改类型。
然后,在代码里面 “import CoreData”。接着,用NSManagedObject来保存对象,它可以转换成任何对象。它的类型是字典。
读已有的列表中的数据:
var filesList = [NSmanagedObject]()
string name = fileList[0].valueForKey("name") as String?
保存示例,分为五步:
//保存数据到entity
func saveFiles(name: String, content: String) {
//第一步,获取Core Data代理:
let appDelegate = UIApplication.sharedApplication().delegate as AppDelegate //总代理
//第二步,获取managedObject的总管
let managedContext = appDelegate.managedObjectContext
//第三步,获取Entity:
let entity = NSEntityDescription.entityForName("Article", inManagedObjectContext: managedContext!)
//第四步,初始化将要插入的对象并设置对象的值:
let file = NSManagedObject(entity: entity!, insertIntoManagedObjectContext: managedContext)
file.setValue(name, forKey: "name")
file.setValue(content, forKey: "content")
//第五步,保存:
var error: NSError? = nil
managedContext!.save(&error)
//第六步,保存数据到列表
self.filesTable.insert(file, atIndex: 0)
}