ios - 如何确定文件的文件类型(文档类型/UTI)
<p><p>我正在开发一个文档应用程序。我的文档实际上是一个可以容纳其他任意文档的包。加载文档后,我可以使用 NSFileWrapper API 获取所有这些文件的句柄。我想知道这些 NSFileWrapper 对象代表什么样的文件,所以我知道如何在我的应用程序中显示它。它是文本文件、图像还是二进制文件?</p>
<p>有没有办法获取 NSFileWrapper 的 UTI?我确实在来自 AppKit 的 NSFileWrapper 上找到了一个“图标”属性。所以他们必须有某种方式知道文件是什么才能查找其图标。</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>您可以向 <code>NSWorkspace</code> 询问任何文件的 UTI:</p>
<pre><code>import Cocoa
let documents = NSSearchPathForDirectoriesInDomains(.DocumentDirectory,
.UserDomainMask, true) as! String
let documentPath = documents.stringByAppendingPathComponent("test.pages")
// test.pages will need to exist on the filesystem
NSWorkspace.sharedWorkspace().typeOfFile(documentPath, error: nil)
// com.apple.iwork.pages.sffpages
</code></pre>
<p>我不确定它有多可靠,或者如果有多个应用程序能够打开同一个文件会发生什么。</p>
<p>文档鼓励检查 <code>NSError</code>,但没有说明会发生什么错误。</p></p>
<p style="font-size: 20px;">关于ios - 如何确定文件的文件类型(文档类型/UTI),我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/31106598/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/31106598/
</a>
</p>
页:
[1]