这是我的文本文件导出和导入困境的第二部分。现在,我有写代码和导出代码。拼图的最后几块是导入代码和读取代码。我想从电子邮件中获取附件并将其导入应用程序,因此我可以阅读它。我有基本的读代码:
@IBAction func readButton(_ sender: UIButton) {
let filePath = getDocumentsDirectory().appendingPathComponent("matrixFile.txt")
do {
try displayField.text = String(contentsOfFile: path!,
encoding: String.Encoding.utf8)
} catch let error as NSError{
displayField.text = String(describing: error)
}
}
但是我也想知道导入时filePath会是什么。我调整了info.plist以便导出,但是我还需要对其进行更改吗?以下是我目前的新增内容: 提前谢谢。
答案 0 :(得分:3)
为了打开通过电子邮件附件进入的文档,您需要将应用程序显示在“打开方式...”菜单列表中。根据{{3}}你必须:
答:您需要注册应用程序可以使用的文档类型 用iOS打开。为此,您需要向您的文档添加文档类型 app的Info.plist,适用于您的应用可以打开的每种文档类型。 此外,如果iOS不知道任何文档类型,您 需要为此提供统一类型标识符(UTI) 文件类型。
我知道您已经添加了导出类型UTI(如屏幕截图所示),但您是否按照上述链接页面上的说明使用您定义的UTI添加文档类型?如果你没有,你应该添加文档类型,因为,我相信,它是文档类型,它标识你的应用程序能够处理特定类型的文档。
此外,由于txt是已知格式,因此您可能不需要再次为文本文件定义UTI。您可以在文档类型定义中将现有UTI用于文本文件。
事实上,我通过创建一个快速测试应用程序测试了上述内容,我必须添加到应用程序的所有内容都是文档类型,(没有UTI定义,因为文本是已知类型),以便我看到我的测试应用程序在Open in ...列表中。这是我的文档类型声明: relevant Apple Documentation
<强>更新强>
正如@LeoDabus所提到的,您需要通过UIApplicationDelegate
的{{1}}方法实现实际打开文件。我想你已经知道了这一部分,但如果你需要额外的帮助,请在这里问一下我会回复。