2013-08-22 55 views
2

我正在开发一个广泛基于Core数据的应用程序。我有几个实体和关系。格式有点像这样 -以CSV格式导入/导出数据,通过电子邮件存储在Core数据中

有一个实体“卡”与“收件人”(另一个实体)和“客户”(另一个实体)有一对多的关系。收件人和客户可以由用户添加/修改/删除。该列表存储在表格视图中。

我想通过电子邮件将数据(收件人,客户等)导出。但是,所有存储在Core数据中的权利?所以我必须将它存储在文档目录中,或者获取存储在核心数据中的路径?

我跟着这些链接,但他们不使用核心数据这样来存储数据,将逻辑是相同的显示在下面的链接: -

http://www.raywenderlich.com/1948/itunes-tutorial-for-ios-how-to-integrate-itunes-file-sharing-with-your-ios-app

http://www.raywenderlich.com/1980/email-tutorial-for-ios-how-to-import-and-export-app-data-via-email-in-your-ios-app

任何帮助将非常感激。

谢谢

+0

将数据库转换为CSV(NSData)将其附加到电子邮件。 –

+0

导出的目的是什么(为什么CSV)? – Wain

+0

@JustinMeiners如何做到这一点? –

回答

2

您在创建存储时指定.sqlite文件的路径。您可以将该文件(使用NSFileManager)复制到其他位置并重新命名(将扩展名更改为特定于您的应用的某个自定义值)。一旦你移动它,如果你将它移动到正确的文件夹,它将自动提供给iTunes共享。或者,您可以获取文件的数据(使用dataWithContentsOfFile:),然后将其添加为电子邮件的附件(再次指定特定于您的应用的附件的文件扩展名)。

然后你想看看教你的应用程序来处理该文件扩展名以允许导入(见this)。

+0

谢谢你的回答。我会按照你所说的。所以我提到的链接在这里没有帮助? –

+0

如果他们涵盖你想要做的事情,它们很有用。第一部分提供了iTunes共享的详细信息,并介绍了您想要从中导入的一些内容,以及在哪里放置文件,以便它们可以以这种方式导出。基本上我只是说用一个不同的名字复制.sqlite文件,而不愿意将文件导出为其他格式 – Wain

+0

好的。我会尝试做到这一点,看看它是如何工作的。 –

相关问题