Как открыть папку?
После сохранения файла я хочу открыть папку с сохраненным файлом. Как мне это сделать? Большое вам спасибо!
Ответы
Ответ 1
Если я понимаю ваш вопрос, вы хотите открыть папку, в которую что-то было сохранено в Finder?
Это должно сделать трюк - предполагается, что у вас есть ссылка на savePanel.
NSURL *fileURL = [savePanel URL];
NSURL *folderURL = [fileURL URLByDeletingLastPathComponent];
[[NSWorkspace sharedWorkspace] openURL: folderURL];
Если вы начинаете с NSString
, содержащего путь, то начинайте с:
NSURL *fileURL = [NSURL fileURLWithPath: stringContainingPath];
Ответ 2
Еще лучше было бы не просто открыть папку, а сохранить выбранный файл. NSWorkspace может сделать это для вас:
[[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:
@[ URLToSavedFile ]];
Аргумент представляет собой массив URL, поэтому, если у вас есть только один файл, который вы хотите раскрыть, вы просто передаете массив из одного объекта.
Если по какой-либо причине вы ориентируетесь на версию Mac OS X старше 10.6, вы должны использовать вместо этого более старый метод на основе пути:
[[NSWorkspace sharedWorkspace] selectFile:pathToSavedFile
inFileViewerRootedAtPath:@""];
(Вы хотите передать пустую строку для второго аргумента, чтобы Finder повторно использовал существующее окно Finder для папки, если оно есть.)
Ответ 3
Я знаю, что это сообщение довольно старое, но с 10.9 вы хотите сделать
NSString* folder = @"/path/to/folder"
[[NSWorkspace sharedWorkspace]openFile:folder withApplication:@"Finder"];