我们将问题追溯到文件的内容类型声明有缺陷。在 Mac OS X 中引入的 Snow Leopard 文件将不再被其扩展名识别(正如我们从旧的 unix 时代所知道的那样) - 相反,每个文件都有一些包含内容类型的元信息。
您可以在名为 mdls 的终端实用程序的帮助下查看每个文件的元数据。所以在这个例子中,我们通过触摸创建一个空的 *.gpx 文件并显示它的元数据:
% touch bla.gpx <Tuesday 09:11:23>
saschaheld@Saschas-MacBook-Pro:~
% mdls bla.gpx <Tuesday 09:11:25>
kMDItemContentCreationDate = 2013-06-04 07:11:25 +0000
kMDItemContentModificationDate = 2013-06-04 07:11:25 +0000
kMDItemContentType = "com.apple.dt.document.gpx"
kMDItemContentTypeTree = (
"com.apple.dt.document.gpx",
"public.xml",
"public.text",
"public.data",
"public.item",
"public.content"
)
kMDItemDateAdded = 2013-06-04 07:11:25 +0000
kMDItemDisplayName = "bla.gpx"
kMDItemFSContentChangeDate = 2013-06-04 07:11:25 +0000
kMDItemFSCreationDate = 2013-06-04 07:11:25 +0000
kMDItemFSCreatorCode = ""
kMDItemFSFinderFlags = 0
kMDItemFSHasCustomIcon = 0
kMDItemFSInvisible = 0
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery = 0
kMDItemFSLabel = 0
kMDItemFSName = "bla.gpx"
kMDItemFSNodeCount = 0
kMDItemFSOwnerGroupID = 20
kMDItemFSOwnerUserID = 501
kMDItemFSSize = 0
kMDItemFSTypeCode = ""
kMDItemKind = "GPX File"
kMDItemLogicalSize = 0
kMDItemPhysicalSize = 0
因此,您可以看到默认分配给内容类型“com.apple.dt.document.gpx”的文件扩展名 *.gpx。在这个特定问题中,默认扩展名 - contenttype-mapping 被第三方应用程序(称为 Adze ( http://kobotsw.com ))修改,导致 Xcode 无法正确识别文件。
解决此问题的最简单方法是通过系统首选项重置您的聚光灯索引。打开 Spotlight-Prefpane,切换到 Privacy-Tab 并将您的 Macintosh-Volume (/) 拖到 TableView - 保存此设置后,您可以从 TableView 中删除 Macintosh-Volume,这将导致完整的聚光灯重新索引。
请记住,重新索引可能需要一些时间,具体取决于您的文件数量、读取速度和卷大小。