如何打开文件夹?
答
如果我理解你的问题,你想打开保存在Finder中的文件夹?
这应该做的 - 它假定你有一个savePanel的引用。
NSURL *fileURL = [savePanel URL];
NSURL *folderURL = [fileURL URLByDeletingLastPathComponent];
[[NSWorkspace sharedWorkspace] openURL: folderURL];
如果你开始与包含路径的NSString
,然后开始:
NSURL *fileURL = [NSURL fileURLWithPath: stringContainingPath];
答
更妙的是不只是打开文件夹,但保存的文件选择。 NSWorkspace能为你做:
[[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:@[ URLToSavedFile ]];
的参数是URL的数组,所以如果你有你想显示只有一个文件,你只需通过一个对象的数组。
如果由于某种原因,你的目标一个版本的Mac OS X的年纪比10.6,你会使用,而不是旧的基于路径的方法:
[[NSWorkspace sharedWorkspace] selectFile:pathToSavedFile inFileViewerRootedAtPath:@""];
(你想传递一个空字符串的第二个参数,以便查找将重用现有的Finder窗口的文件夹,如果有的话)。
答
我知道这个帖子是相当老,但与10.9您想要做的是
NSString* folder = @"/path/to/folder"
[[NSWorkspace sharedWorkspace]openFile:folder withApplication:@"Finder"];