Как прочитать данные из файла в комплекте приложений Mac OS? - PullRequest
0 голосов
/ 25 октября 2018

Я пытаюсь прочитать данные из текстового файла на macOS.Я использую String (contentsOf :) и Bundle.main.path (forResource :), как на iOS.Тем не менее, это не работает на MacOS.Я пробовал несколько решений из других постов, но из-за macOS они не работают.

Заранее спасибо.

Редактировать: Мой код:

let path = Bundle.main.path(forResource: "file", ofType: "txt")! // no error
let url = URL(string: path)! // no error
let contents: String
do {
     contents = try String(contentsOf: url)
} catch {
    print(error) // Error Domain=NSCocoaErrorDomain Code=262 "The file couldn’t be opened because the specified URL type isn’t supported."
    contents = "ERROR"
}
print(contents)

Я могу сохранить данные в папке на диске, но я хочу отправить этот файл вместе с моим приложением.

1 Ответ

0 голосов
/ 26 октября 2018

URL(string - неправильный API.Это только для строк URL, начинающихся со схемы (http://, file://)

Для файловой системы paths вы должны использовать URL(fileURLWithPath.

Но вВ этой ситуации есть гораздо лучший способ

Заменить

let path = Bundle.main.path(forResource: "file", ofType: "txt")!
let url = URL(string: path)! // no error

на

let url = Bundle.main.url(forResource: "file", withExtension: "txt")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...