【问题标题】: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 中保存这些数据?

【问题讨论】:

标签: iphone objective-c cocoa cocoa-touch core-data


【解决方案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。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2010-11-16
                • 1970-01-01
                • 2012-12-25
                • 1970-01-01
                • 1970-01-01
                • 2010-12-23
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多