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 上保存数据?的主要内容,如果未能解决你的问题,请参考以下文章
iPhone iOS在呈现图表时如何处理Core Data中的时间间隔?