4

我在从云端导入文件时遇到问题。我正在处理我实际上没有创建的自定义文件类型。所以我不知道实际的扩展类型是什么(例如 com.example.pdf)。该文件以 .toc 结尾,那么有没有办法我只能接受以 .toc 结尾的文件?

例如这样的:

UIDocumentPickerViewController(documentTypes: [String("*.toc")], in: .import)

如果这是不可能的,有没有办法允许选择任何文件?从那里我可以检查最后 4 位数字并让用户知道文件必须以 .toc 结尾?

为了尝试获取有关这是什么类型的文件的更多信息,我还在终端中运行了以下命令:

file -I filename.toc

哪个返回:

filename.toc: text/html; charset=us-ascii

因为这表明它是我尝试使用的“文本/html”文件:

UIDocumentPickerViewController(documentTypes: [String(kUTTypeText)], in: .import)

但是,这不允许我选择文件......有人有什么想法吗?

4

1 回答 1

2

kUTTypeText用于文本/纯文本。你想要kUTTypeHTML文本/html。

iOS 可能不同意“toc”文件是 text/html。您可能应该在 Info.plist 中添加适当的“导出的 UTI”,为“toc”扩展定义适当的 mime 类型。然后将该 mime 类型与您的UIDocumentPickerViewController.

有关在您的应用程序中设置导出的 UTI 的详细信息,请参阅统一类型标识符概述。

如果要允许任何文件,请使用kUTTypeItem.

于 2017-12-05T03:05:46.330 回答