将图像保存到核心数据?
Posted
技术标签:
【中文标题】将图像保存到核心数据?【英文标题】:Saving image to Core Data? 【发布时间】:2017-08-05 11:45:06 【问题描述】:我想把这些小头像解析成核心数据,我有这个功能使用AlamofireImage。
但是,在将结果设置为核心数据属性时,出现此错误。
无法分配“数据”类型的值?输入“NSData?”
这是我的代码:
self.managedObjectContext = self.coreDataManager.managedObjectContext
let contactAvatar = UIImagePNGRepresentation(image);
contact.avatar = contactAvatar
do
try self.managedObjectContext?.save()
catch
fatalError("Failure to save context: \(error)")
我的核心数据条目是二进制数据。我认为我应该能够正确保存为这种格式?
【问题讨论】:
【参考方案1】:有两种选择:
在模型中将属性avatar
声明为Data
(首选)
桥牌contactAvatar as NSData
【讨论】:
你不能在模型中将Data声明为一个类型?只是二进制数据Data
是 NSData
的 Swift 3 等价物
即时保存你不能作为核心数据实体中的属性,NSData 和 Data 不存在作为选项 fpr 保存到
(NS)Data
== 二进制数据
根据我之前的经验,从 CoreData 保存/加载数据非常耗时。而不是这样做,您可以将图像作为文件保存在您的一个应用程序的文件夹中,然后存储到该文件的链接,这样会更有效。以上是关于将图像保存到核心数据?的主要内容,如果未能解决你的问题,请参考以下文章
将图像保存到核心数据中并将其提取到 tableview 单元格中