iPhone 上是不是存在 Core Data?或者您将如何在 iPhone 上保存数据?

Posted

技术标签:

【中文标题】iPhone 上是不是存在 Core Data?或者您将如何在 iPhone 上保存数据?【英文标题】:Does Core Data exist on the iPhone? Or how would you save Data on the iPhone?iPhone 上是否存在 Core Data?或者您将如何在 iPhone 上保存数据? 【发布时间】:2009-03-01 12:00:19 【问题描述】:

假设我制作了一个应用程序,让用户可以做简短的笔记并写下来。 iPhone OS 上也有 Core Data 吗? 或者你会如何在 iPhone 中保存这些数据?

【问题讨论】:

你看过这个网址***.com/questions/443223/… 【参考方案1】:

没有。 iPhone 中缺少核心数据、Cocoa 绑定以及 Objective-C 垃圾收集。

更新:如下所述,Core Data 适用于 iPhone OS 3.0。

【讨论】:

【参考方案2】:

如果你可以等待 iPhone OS 3.0,Apple 的预告片将 Core Data 列为 3.0 的新功能之一。

【讨论】:

【参考方案3】:

如果您有大量数据,SQLite 通常是首选的存储方法。您可以手动编写 SQL 类,或者有许多不错的第三方解决方案。

对于少量信息,您可以使用 NSCoding 和 NSArchiver 轻松地将数据存储在文件中。

【讨论】:

【参考方案4】:

我将重申上述内容,但您可以查看OmniDataObjects,它提供 Core Data 风格的功能并在 iPhone 上运行。

【讨论】:

【参考方案5】:

如果您必须对保存的数据进行排序或查询,最好的解决方案是 SQLite。 否则,您可以使用序列化数据。 NSDictionary 和 NSArray 提供 -writeToFile 方法将序列化(以 xml 格式)数据写入文件。

马可

【讨论】:

【参考方案6】:

根据复杂程度,您可以将数据保存在 sqlite 数据库、plist 文件中,甚至可以创建自己的 xml 文件并将它们保存在 iphone 文件系统中(通常在文档目录中)

如果您预计不会有太多的读取/写入/复杂查找,那么请坚持使用 plist 文件或 xml 文件

如果有更复杂的事情,请继续使用 sqlite。

如果您确实继续使用 sqlite,那么我建议您使用 FMDB - sqlite 的可可包装器,这可以为您节省大量重复代码

【讨论】:

【参考方案7】:

iPhone 上的数据保存并没有太大区别 - 将数据写入文件(如 plist)。据我所知,没有 iPhone Core Data。

【讨论】:

以上是关于iPhone 上是不是存在 Core Data?或者您将如何在 iPhone 上保存数据?的主要内容,如果未能解决你的问题,请参考以下文章

Core Data 根据是不是存在关系对描述符进行排序?

iPhone iOS在呈现图表时如何处理Core Data中的时间间隔?

iPhone 上 Core-Data 中的字符串被截断

Core Data 在 iPhone4 等旧设备上非常慢

解释 Core Data 验证消息并在 iPhone 上显示它们的好模式是啥?

在 Core Data 存储迁移到新版本时,在 iPhone 应用程序的初始屏幕上显示 MBProgressHUD?