bbu*_*bum 39
如果我理解你的问题,你想打开在Finder中保存了某些内容的文件夹?
这应该可以解决 - 它假设你有一个对savePanel的引用.
NSURL *fileURL = [savePanel URL];
NSURL *folderURL = [fileURL URLByDeletingLastPathComponent];
[[NSWorkspace sharedWorkspace] openURL: folderURL];
Run Code Online (Sandbox Code Playgroud)
如果您从NSString包含路径开始,则从以下开始:
NSURL *fileURL = [NSURL fileURLWithPath: stringContainingPath];
Run Code Online (Sandbox Code Playgroud)
Pet*_*sey 32
更好的方法是不仅要打开文件夹,还要选择保存的文件.NSWorkspace可以为您做到这一点:
[[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:
@[ URLToSavedFile ]];
Run Code Online (Sandbox Code Playgroud)
参数是一个URL数组,因此如果您只想显示一个文件,则只需传递一个对象的数组.
如果由于某种原因,您的目标是Mac OS X的版本低于10.6,那么您将使用旧的基于路径的方法:
[[NSWorkspace sharedWorkspace] selectFile:pathToSavedFile
inFileViewerRootedAtPath:@""];
Run Code Online (Sandbox Code Playgroud)
(您希望为第二个参数传递一个空字符串,以便Finder将重用该文件夹的现有Finder窗口(如果有).)
小智 8
我知道这篇文章相当陈旧,但10.9你想做的是
NSString* folder = @"/path/to/folder"
[[NSWorkspace sharedWorkspace]openFile:folder withApplication:@"Finder"];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7965 次 |
| 最近记录: |