mac os x如何将文件添加到核心数据库中

时间:2014-01-02 20:35:48

标签: macos core-data xcode5 osx-mavericks

我想存储我的应用程序的图像和核心数据数据库,但我无法弄清楚如何将图像添加到我的核心数据数据库。任何人都知道我怎么能这样做?我非常感谢你的帮助。

3 个答案:

答案 0 :(得分:1)

这可以通过在您的实体上使用二进制数据属性来完成。这允许您将二进制数据(如图像或文件)直接存储在核心数据数据库中。如果文件/图像预计超过10MB,我会检查属性检查器中的“允许外部存储”复选框,以获取二进制数据属性。这允许核心数据将此数据存储在.sqlite文件外部的文件中。这有助于提取/节省效率,但如果你有大量的图像/文件,你最好自己管理文件。核心数据未针对大量数据进行优化。

答案 1 :(得分:0)

您必须将图像添加为二进制数据NSData

但处理效率不高。将图像保存为文件然后将文件名存储在数据库中的更好方法。这将节省查询开销。

答案 2 :(得分:0)

您可能需要考虑使用Transformable属性来自动处理与NSImage之间的转换。请记住,如果您希望图像与iOS兼容,则最好使用PNG格式。