我来自香港,是iphone编程的新手。我知道Objective-C的基础知识。 现在,我想编写一个包含大约10000个数据的iOS应用程序,每个项目存储不同的信息,例如项目编号,名称,颜色,大小等。
例如:
项目1 Apple Red Fruit 2,100
项目2橙橙色水果3,200
项目3猪肉粉红肉3,300
第4项....... ...
项目10000 ....
过去如果我在桌面(PC)中编写程序,我会将这些数据存储在 一个文本文件(.txt),并将所有这10000个数据读写到一个数组,然后执行 一些排序,计算等没有内存问题和程序运行 也很快。
但是,我知道因为iphone内存有限。我有以下问题:
如果我使用文本文件存储这10000个数据然后传递这些数据 数据到数组,会在iphone中发生错误吗?或任何记忆问题?
核心数据是我最好的选择吗?我可以从Core Data
在我的情况下,Core Data是一个不错的选择吗?
答案 0 :(得分:1)
如果我使用文本文件存储这10000个数据然后将这些数据传递给数组,那么iphone会出错吗?或任何记忆问题?
是的,由于内存警告,应用程序可能会终止。如果您读取10000文件,然后您将尝试将其放入单个NSArray
对象,则可能会产生不良后果。
核心数据是我最好的选择吗?我可以从核心数据中进行排序,搜索等。
是。 Core Data有许多排序和搜索方法。请阅读NSFetchRequest Class Reference了解详情。
在我的案例中核心数据是一个不错的选择吗?
绝对是。没有安装或存储问题,因为它内置于iOS中。有关使用此强大框架构建应用程序的更多信息,请参阅Core Data Programming Guide。
答案 1 :(得分:0)
可能最好将数据存储在sqlite数据库中,尽管核心数据也是可能的。包括一些相关链接,以帮助您前进。
http://www.raywenderlich.com/902/sqlite-101-for-iphone-developers-creating-and-scripting
http://www.raywenderlich.com/934/core-data-tutorial-getting-started