【发布时间】:2013-10-24 14:47:07
【问题描述】:
我有一些旧代码使用旧的 FSFindFolder 例程查找特定文件夹。 现在我的任务是对这段代码进行现代化改造。 起初使用 NSFileManager 的 URLForDirectory 似乎是正确的选择。 不幸的是,我发现 URLForDirectory 不再支持您可以使用 FSFindFolder 找到的许多文件夹。
您可以使用 FSFindFolder 找到的文件夹列表很长,而且其中大部分对我来说都没有用。
这是我确实需要转换的 FSFindFolder 常量及其 URLForDirectory 等效项的部分列表:
FSFindFolder URLForDirectory
============================== ===============
kDesktopFolderType NSDesktopDirectory
kCachedDataFolderType NSCachesDirectory
kApplicationSupportFolderType NSApplicationSupportDirectory
kTemporaryFolderType located by calling NSTemporaryDirectory()
kCurrentUserFolderType located by calling NSHomeDirectory()
kSystemFolderType Not Available
kPreferencesFolderType Not Available
kTrashFolderType Not Available
kAudioComponentsFolderType Not Available
kVolumeRootFolderType Not Available
kSharedUserDataFolderTypeNo Not Available
我的问题:是否有一种标准方法可以在不使用 FSFindFolder 的情况下找到每个标记为“不可用”的文件夹的路径?
【问题讨论】:
-
@hussain-shabbir 问题 18683345 是关于浏览文件夹中的文件 - 这与我的问题无关。我的问题是关于定位特定文件夹。
-
你能解释一下你想要达到的目标吗?我的意思是你需要什么输出??
-
如果我没记错你想在不使用这个 FSFindFolder 的情况下定位路径吗??
-
我已经更新了你的解决方案,让我知道这是你想要的吗??
标签: macos cocoa nsfilemanager macos-carbon