我正在编写一个使用Uniform Type Identifiers的应用程序。具体而言,我打电话UTTypeCreateAllIdentifiersForTag()
并传递各种MIME类型。鉴于UTI(统一类型标识符),找到它符合的所有类型
我希望这个功能(不同于UTTypeCreatePreferredIdentifierForTag()
)能给我最具体的UTI以及它所符合的所有UTI。这似乎并非如此 - 它要么返回单个UTI,要么次要UTI是假的。
在相同的头文件中定义了UTTypeConformsTo()
函数,但我更喜欢一个函数,该函数返回此UTI符合的所有类型的数组。
我似乎有希望,因为MDItemCopyAttributeList()
将返回这样的列表。也就是说,它需要一个MDItemRef
,它可以从文件路径或URL创建 - 这不是很好。有时我的数据只存储在内存中,我只有一个MIME类型。
我是否必须遍历UTI的整个数据库才能获取此信息,或者我是否错过了某些内容?