... > Swift > Файлы и директории...

Файлы и директории в Swift

НАВИГАЦИЯ ПО СТРАНИЦЕ

Проверка существования файла Создание директории Создание файла Чтение из файла Запись в файл Удаление файла Получение списка файлов

В Swift для работы с файлами и директориями используется стандартная библиотека Foundation, а именно модуль FileManager. С помощью этого модуля вы можете выполнять операции чтения, записи, создания и управления файлами и директориями. Рассмотрим основные операции.

Проверка существования файла или директории:

import Foundation

let fileManager = FileManager.default
let filePath = "/путь/к/файлу.txt"

if fileManager.fileExists(atPath: filePath) {
    print("Файл существует")
} else {
    print("Файл не найден")
}

Создание директории:

let directoryPath = "/путь/к/новой_директории"

do {
    try fileManager.createDirectory(atPath: directoryPath, withIntermediateDirectories: true, attributes: nil)
    print("Директория создана")
} catch {
    print("Ошибка при создании директории: \(error)")
}

Создание файла:

let filePath = "/путь/к/новому_файлу.txt"

let content = "Пример текста в новом файле"

do {
    try content.write(toFile: filePath, atomically: true, encoding: .utf8)
    print("Файл создан")
} catch {
    print("Ошибка при создании файла: \(error)")
}

Чтение из файла:

let filePath = "/путь/к/файлу.txt"

do {
    let content = try String(contentsOfFile: filePath, encoding: .utf8)
    print("Содержимое файла: \(content)")
} catch {
    print("Ошибка при чтении из файла: \(error)")
}

Запись в файл:

let filePath = "/путь/к/файлу.txt"
let content = "Новый текст для записи в файл"

do {
    try content.write(toFile: filePath, atomically: true, encoding: .utf8)
    print("Текст записан в файл")
} catch {
    print("Ошибка при записи в файл: \(error)")
}

Удаление файла:

let filePath = "/путь/к/файлу.txt"

do {
    try fileManager.removeItem(atPath: filePath)
    print("Файл удален")
} catch {
    print("Ошибка при удалении файла: \(error)")
}

Получение списка файлов в директории:

let directoryPath = "/путь/к/директории"

do {
    let files = try fileManager.contentsOfDirectory(atPath: directoryPath)
    print("Список файлов в директории: \(files)")
} catch {
    print("Ошибка при получении списка файлов: \(error)")
}

Эти примеры демонстрируют основные операции работы с файлами и директориями в Swift. Учтите, что при выполнении этих операций может потребоваться управление разрешениями на файловую систему, особенно при работе с директориями и файлами в защищенных местах, таких как каталоги приложений на устройствах iOS.