OSX - Получить путь к файлу из FileURL с помощью перетаскивания в изолированном приложении - PullRequest
0 голосов
/ 21 апреля 2019

Я использую Drag and Drop, чтобы поместить файл на мое приложение.

Apple устарела NSFilenamesPboardType в OSX 10.14 и предлагает использовать NSPasteboardTypeFileURL.

Полученный URL-адрес (строка):

file: ///.file/id= 6571367.2682325

Как получить фактический путь к файлу по этому URL?Мне нужно имя файла и информация о типе.Могу ли я также получить доступ к файлу с полным путем к файлу?Я предполагаю, что это добавлено в мою Песочницу.

Ответы [ 2 ]

0 голосов
/ 25 апреля 2019

Я работаю в Mac OS 10.14 с Xcode 10.2.

Я получил два решения в executeDragOperation (оба registerForDraggedTypes с NSPasteboardTypeFileURL. Затем):

  1. упомянуто выше

    [[NSURL URLWithString :lativePath] fileSystemRepresentation];

  2. init pasteBoard

    NSString * fileURL = [[NSURL URLFromPasteboard: pasteBoard] путь];

0 голосов
/ 22 апреля 2019

Я нашел решение, используя:

NSURL * url = [NSURL initWithString:urlString];
NSString * path = [url fileSystemRepresentation];

И да, файл был доступен из моего приложения с песочницей.

...