是否可以访问核心数据中的原始数据以获取可转换属性

Posted

技术标签:

【中文标题】是否可以访问核心数据中的原始数据以获取可转换属性【英文标题】:Is it possible to access the raw data in Core Data for a Transformable attribute 【发布时间】:2010-02-13 19:51:47 【问题描述】:

我有一个可转换类型的图像字段和一个典型的 ImageToDataTransformer 类。 99% 的时间这是完美的捷径,但只是偶尔我发现自己将托管对象转换回 NSData(知道如果不是 ImageToDataTransformer 我会首先得到 NSData)。由于这些操作在 iPhone 上相当昂贵,有没有办法在我只想要 NSdata 的极少数情况下避免使用变压器?

【问题讨论】:

【参考方案1】:

使用可转换属性,但没有转换器。然后,手动处理转换。

【讨论】:

可转换字段和直接保存 NSData 的二进制数据字段之间有什么区别? 不确定。有关系吗?手动管理图像数据可让您在极少数情况下获得性能提升。 仅在我将图像存储为二进制时遇到问题。随机崩溃,但我无法弄清楚。我切换到可变形和变压器,它很坚固。我真正做的只是改变类型,把我的手动转换变成一个转换器。听起来我必须尝试回到一半:-) Transformables 几乎不值得麻烦。每次我想处理不寻常的数据时,我都会自己编写访问器并将它们存储为其他东西(JSON 用于常见示例的 UIColor)和 png 数据用于图像等。我不喜欢 Transform 属性,因为它对我的口味来说,抽象的有点太多了。

以上是关于是否可以访问核心数据中的原始数据以获取可转换属性的主要内容,如果未能解决你的问题,请参考以下文章

核心数据 - 原始设置器/获取器更快吗?啥时候不使用?

核心数据可转换属性(NSArray)为空

核心数据原始访问器

如何从Core Data中的字符串获取Processed字符串

核心数据 - 以一对多关系访问实例与获取请求?

js对象是拥有属性和方法的数据吗?