Macos mac os x如何向核心数据数据库添加文件

Macos mac os x如何向核心数据数据库添加文件,macos,core-data,xcode5,osx-mavericks,Macos,Core Data,Xcode5,Osx Mavericks,我想存储图像和我的应用程序的核心数据数据库,但我不知道如何将图像添加到我的核心数据库。你们有谁知道我怎么做吗?。非常感谢您的帮助。您必须将图像添加为二进制数据,NSData 但这并不能有效地处理。更好的方法是将图像保存为文件,然后将文件名存储在数据库中。这将节省查询开销。这可以通过在实体上使用二进制数据属性来完成。这允许您将二进制数据(如图像或文件)直接存储在核心数据数据库中。如果文件/图像预期超过10MB,我会选中属性检查器中的“允许外部存储”复选框,以查看二进制数据属性。这允许核心数据将此数

我想存储图像和我的应用程序的核心数据数据库,但我不知道如何将图像添加到我的核心数据库。你们有谁知道我怎么做吗?。非常感谢您的帮助。

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


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

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

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

我建议您选中该框中的任何二进制属性,而不管您期望的大小如何。它允许使用外部文件,但不需要,所以由核心数据决定。