РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
674 of 723 menu

Метод rename

Метод rename класса Directory переименовывает директорию. Метод принимает один параметр - новый путь к директории в виде строки. Возвращает объект Directory, который представляет директорию по новому пути. Если директория с новым именем уже существует или исходная директория не найдена, будет выброшено исключение.

Метод rename является асинхронным и возвращает объект Future. Для синхронного переименования используйте метод renameSync.

Синтаксис

Directory.rename(String newPath)

Пример

Давайте создадим директорию, а затем переименуем её:

import 'dart:io'; void main() async { Directory dir = Directory('old_folder'); await dir.create(); print('Директория создана'); Directory renamed = await dir.rename('new_folder'); print('Переименовано в: ${renamed.path}'); }

Результат выполнения кода:

"Директория создана" "Переименовано в: new_folder"

Пример

Давайте проверим, что старая директория больше не существует, а новая доступна:

import 'dart:io'; void main() async { Directory dir = Directory('abcde'); await dir.create(); Directory renamed = await dir.rename('12345'); bool oldExists = await dir.exists(); bool newExists = await renamed.exists(); print('Старая существует: $oldExists'); print('Новая существует: $newExists'); }

Результат выполнения кода:

"Старая существует: false" "Новая существует: true"

Пример

Давайте обработаем ошибку, если директория с новым именем уже существует:

import 'dart:io'; void main() async { Directory dir = Directory('abcde'); await dir.create(); Directory existing = Directory('12345'); await existing.create(); try { await dir.rename('12345'); } catch (e) { print('Ошибка: $e'); } }

Результат выполнения кода:

"Ошибка: FileSystemException: Cannot rename directory, path = 'abcde' (OS Error: Directory not empty, errno = 39)"

Смотрите также

  • класс Directory,
    который представляет директорию
  • метод create,
    который создаёт директорию
  • метод delete,
    который удаляет директорию
  • метод exists,
    который проверяет существование директории
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить