Управление файлами
Эта задача объясняет, как выполнить подобные Средству поиска операции на использовании файлов NSWorkspace
.
Открытие и показ файлов
NSWorkspace обеспечивает несколько методов для вводных файлов:
Открыть файл с поведением по умолчанию, как будто пользователь открыл его от Средства поиска, использование
openFile:
метод.Для открытия файла с определенным приложением использовать
openFile:withApplication:
.Чтобы открыть файл с определенным приложением и указать, должно ли текущее приложение деактивироваться (разрешение нового приложения стать активным), использовать
openFile:withApplication:andDeactivate:
.
Для показа файла в Средстве поиска используйте selectFile:inFileViewerRootedAtPath:
метод.
Открытие URLs
Для открытия URL с обработчиком по умолчанию для типа ресурса используйте openURL:
метод. URL может быть или локальным или удаленным. Например, локальная переменная, файлы открыты, как будто дважды щелкнутый в Средстве поиска, и веб-адреса открыты в веб-браузере по умолчанию.
Выполнение операций файла
Метод NSWorkspace performFileOperation:source:destination:files:tag:
выполняет различные операции файловой системы на файлах, таких как перемещение и копирование. Следующий фрагмент кода показывает, как скопировать файл в fullPath
от source
к destination
:
NSInteger tag; |
BOOL succeeded; |
NSString *source, *destination, *fullPath; // Assume these exist |
NSWorkspace *workspace = [NSWorkspace sharedWorkspace]; |
NSArray *files = [NSArray arrayWithObject:fullPath]; |
succeeded = [workspace performFileOperation:NSWorkspaceCopyOperation |
source:source destination:destination |
files:files tag:&tag]; |
В этом фрагменте кода, по возврату succeeded
содержит YES
если работа успешно выполнилась, NO
иначе. Кроме того, наборы метода tag
к отрицательному целому числу, если работа перестала работать, 0
если работа выполняется асинхронно и успешно выполняется, если работа выполняется синхронно и успешно выполняется, и положительное целое число.