Swift:
Проверка существования директории
Как это сделать:
В Swift за это отвечает FileManager
. Используйте его метод fileExists(atPath:)
:
import Foundation
let fileManager = FileManager.default
let path = "/path/to/directory"
if fileManager.fileExists(atPath: path) {
print("Ага, она есть!")
} else {
print("Нет, не существует.")
}
Пример вывода, если директория существует:
Ага, она есть!
Или, если её нет:
Нет, не существует.
Глубокое погружение
До появления FileManager
, который был введен с фреймворком Foundation, для проверки путей обычно использовались UNIX команды в скриптах. Но FileManager
проще и безопаснее. Альтернативы в Swift включают работу с классом URL
и его методом checkResourceIsReachable()
, хотя он больше подходит для проверки доступности файла и может генерировать ошибки. Внутренне, FileManager
использует системный вызов stat
для проверки существования пути без учета того, является ли это файлом или директорией, так что когда вам нужно различать это, придется дополнительно изучить атрибуты пути.
Смотрите также
- Документация Swift:
FileManager
- Книга Swift: Работа с директориями
- Форумы разработчиков Apple: Доступ к файловой системе