2011-12-12 86 views
0

我开发一个iPhone应用程序(当然,我迁移了Windows Phone 7.1到iPhone),我有一些问题:存储数据与我的iPhone应用程序使用

之前,我问过这个问题,Storing data in XML or SQL?,当时我正在开发一个Windows Phone 7.1应用程序。现在我有同样的问题,但在这种情况下,它是关于iPhone。

我发现在iOS开发中,XML并不像在Windows Phone中那样容易阅读。在这个问题中,Reading XML attributes and text,你可以找到我用来读取XML文件的方法。

我敢肯定,我不需要使用数据库来存储只有22个项目,但是,有没有其他方式来存储这22个项目?或者,也许,你知道一种简单的方法来读取XML。

我需要的是这样的:

<?xml version="1.0" encoding="utf-8" ?> 
<cards> 
    <card id ="0"> 
    <name lang="en">Mad</name> 
    <description lang="en">This...</description> 
    </card> 
... 
</cards> 

这个数据将是只读:用户永远不会改变它。这将作为与我的应用程序捆绑在一起的文件。

+0

我对超过20个项目的所有数据使用核心数据。如果你只需要存储22个项目,你也可以使用一个单例和一个数组。要存储这个数组,你可以使用NSUserDefaults。 – dasdom

回答

0

你还没有说过你是如何使用这些数据的。

您是否在简单地将数据与应用程序捆绑在一起?如果是这样,最简单的方法是使用属性列表(plist)。 NSArrayNSDictionary都有便捷的方法可以将数组和字典从plists中拉出来,并且在Xcode中有一个图形编辑器。

你是通过网络服务加载此数据?你需要支持多种平台吗?如果是这种情况,那么JSON将是更好的选择。 JSON支持仅包含在iOS 5中,但如果您需要支持早期版本,JSONKit将为您处理此问题。

您是否需要更新和运行数据查询?核心数据是这类事情的更好选择。用户第一次运行应用程序时,可以用plist或JSON文件的内容预加载它。

有很多不同的选择,除非你提供更多的细节,否则很难给你很好的建议。

+0

用户,永远不会更改该数据。数据将与应用程序捆绑在一起。 – VansFannel

0

即将推出并在我的项目中使用核心数据,即使我没有太多的存储空间。这并不是那么困难,尤其是因为您可以选择Core Data作为Apple模板中的一个选项。在iOS开发人员库内部,他们也有一个相当不错的基本教程。

Core Data Starting Point

我猜我之间是否会使用的plist或核心数据将是我是否希望我的数据是从编译时静态或由用户进行更新的主要区别。

相关问题