2016-03-03 35 views
1

我正在开发一个iOS应用程序,它将从事件的RSS源中解析XML,并在桌面视图中显示每个事件的详细信息。每个事件都有一个标题,一个描述(可选),一个日期和一个时间。我能够使用NSXMLParser解析XML数据;然而,我不知道应该如何存储数据,并使其在应用程序关闭后仍然存在。如何使用Swift将持久数据存储在我的i​​OS应用程序中?

我读过,我可以使用NSCoder来坚持数据,但我不知道这是否是最好的路线。

有没有人有什么想法或建议,我可以做什么?

任何帮助表示赞赏。

+0

每次打开应用程序时都不会解析数据吗? – Bawpotter

+0

有很多选项可用,从https://github.com/RestKit/RestKit到将数据写入文件系统。不同的选择需要不同的开销,在这方面这是一个广泛的问题。 –

+0

@Bawpotter每当应用程序打开时我都会解析数据,但我想存储所有事件,以便应用程序用户即使在设备未连接到互联网时也可以查看事件。 – Iavor

回答

2

您有几个选项用于保存数据。

  • NSUserDefaults适用于用户设置 - 少量数据。他们似乎不适合你的想法。
  • NSCoding是存储结构化数据的好方法,没有数据库的开销,但它很慢in comparison to core data

  • 核心数据是苹果的ORM,这是相当强大的,但不容易围绕你的头。

answered a similar question最近,它进入有关NSCoding有一个完整的示例,并进一步阅读一些链接更多的细节。

+0

感谢您的回复Jan,我将最多存储20个事件对象。我应该把重点放在NSCoding上吗?我会阅读你对上面链接的类似问题的回答。 – Iavor

+0

@ivdekov听起来像是一个很好的选择。 – SmokeDispenser

+0

如果我想将RSS提要中的数据与我将使用NSCoding存储的数据进行同步,那么您是否有任何建议? – Iavor

相关问题