繁体   English   中英

创建数据的自定义格式文件,并以应用程序格式实现导出功能,并在应用程序中打开文件

[英]Create a custom format file of data and Implement export in app format feature and open in file in the application

我想开发一个功能,用户可以在该功能中以app格式导出数据,并可以通过电子邮件发送数据文件。 现在用户从应用程序中删除数据。 然后它转到邮件并打开文件。 有一个选项可以在应用程序中打开该文件,当按下时,已删除的内容将再次显示在应用程序中。

我知道我必须实现自定义URL,但我很困惑我应该在sqlite或核心数据中创建哪个数据库以及如何以app格式导出数据。 另外如何制作自定义格式文件。

这个概念取自分钟应用程序。 https://itunes.apple.com/us/app/minutetaker-meeting-minutes/id519543986?mt=8

请查看附带的一些图片,以了解我需要实施的内容。

在此输入图像描述

请帮忙。 提前致谢!

首先,研究CFBundleDocumentTypes ,它是指定应用理解的文档类型的机制。

此外,自定义文件类型不是任何特殊或神秘的,它们只是一组导出的数据(二进制,XML,JSON,纯文本......),其格式应该是您的应用理解的。 通常,您的自定义导出数据文件将具有特殊扩展,允许操作系统知道如何处理它们。 您可能还应编码一些标题信息,以便检查您是否了解文件内容(它确实是由您的应用程序创建的,例如版本号匹配)。 您可以像创建数据的NSDictionarywriteToFile:atomically一样创建导出文件但您使用的确切方法取决于您的数据以及如何将其存储在应用程序中。

如果您将数据存储在应用程序内的Cor​​eData中,那么您只需通过电子邮件发送磁盘数据存储文件(考虑在发送之前复制并重命名)。 CoreData已经拥有版本信息和用于处理版本冲突的系统(从旧版本升级并在版本不兼容时抛出异常)。

您不应该做的是根据您导出和共享数据的要求决定如何在应用程序中存储数据。 这是两件非常不同的事情。 根据应用程序在运行时的操作选择内部数据存储,并根据实际需要保存的数据选择导出的数据格式,以便重建数据集。 CoreData非常适合您的应用内存储,但XML文件更有可能成为导出数据的更好解决方案,因为它可以让您对导出的内容和添加其他元数据的大量选项进行大量控制。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM