实体的模型定义:
实体的class定义:
- @objc(ImageEntity)
- class ImageEntity: NSManagedObject {
- @NSManaged var imageData: NSData
- }
存储:
- @IBAction func saveImageToCoreData() {
- let delegate = UIApplication.sharedApplication().delegate as AppDelegate
- let context = delegate.managedObjectContext
-
- let imageData = UIImagePNGRepresentation(UIImage(named: "image"))
-
- let imageEntity = NSEntityDescription.entityForName("ImageEntity",inManagedObjectContext: context!)
- let image = ImageEntity(entity: imageEntity!,insertIntoManagedObjectContext: context!)
- image.imageData = imageData
-
- var error: NSError?
- if context!.save(&error) == false {
- println("Failed: \(error!.localizedDescription)")
- }
- }
读取:
- @IBAction func loadImageFromCoreData() {
- let delegate = UIApplication.sharedApplication().delegate as AppDelegate
- let context = delegate.managedObjectContext
-
- let request = NSFetchRequest(entityName: "ImageEntity")
- var error: NSError?
- let imageEntities = context?.executeFetchRequest(request,error: &error)
-
- let imageEntity = imageEntities?.first! as ImageEntity
- self.imageView.image = UIImage(data: imageEntity.imageData)
- }