SwiftAudio - открытое имя файла, которое содержит пробелы - PullRequest
0 голосов
/ 04 ноября 2019

Я использую библиотеку SwiftAudio для открытия локального URL, но у меня возникает проблема, когда я пытаюсь открыть URL, содержащий пробелы в имени файла.

Так, например, если я пытаюсь открыть файл, которыйимя "example_file.mp3", этот аудио успешно открыт. Но если я пытаюсь открыть файл с именем «example file.mp3», возникает ошибка: «Запрошенный URL не найден на этом сервере». Я также пытался заменить имя на «example% 20file.mp3», но у меня та же ошибка.

Я написал этот код:

var urlPath = "/Users/manuela/Library/Developer/CoreSimulator/Devices/64E0D907-16AD-41A9-9667-4B3C701D4F1B/data/Containers/Data/Application/488A8AAD-EF4B-452D-9A8A-67307C489C72/Library/example file.mp3"
urlPath = urlPath.addingPercentEncoding(withAllowedCharacters: .urlFragmentAllowed)!
print(urlPath)  // this prints "/Users/manuela/Library/Developer/CoreSimulator/Devices/64E0D907-16AD-41A9-9667-4B3C701D4F1B/data/Containers/Data/Application/488A8AAD-EF4B-452D-9A8A-67307C489C72/Library/example%20file.mp3"
let url = URL(string: urlPath)!
let item = DefaultAudioItem(audioUrl: filePath, sourceType: .file)
let controller = AudioController()
try? controller.player.load(item: item, playWhenReady: true)

Я уверен, чтопроблема в пробелах, но я не знаю, какой символ заменяет его. Может кто-нибудь помочь мне, пожалуйста?

...