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

Функция create_directory

Функция create_directory создает новую директорию по указанному пути. В первый параметр мы передаем путь к создаваемой директории, а во второй - объект ошибки error_code (необязательный параметр). Если директория уже существует, функция возвращает false, а если создание прошло успешно - true.

Синтаксис

bool create_directory(const path& p); bool create_directory(const path& p, error_code& ec);

Пример

Давайте создадим директорию test_dir в текущей рабочей папке:

#include <iostream> #include <filesystem> using namespace std; namespace fs = std::filesystem; int main() { bool res = fs::create_directory("test_dir"); if (res) { cout << "Directory created" << endl; } else { cout << "Directory already exists" << endl; } return 0; }

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

"Directory created"

Пример

Давайте попробуем создать директорию, которая уже существует, и проверим результат:

#include <iostream> #include <filesystem> using namespace std; namespace fs = std::filesystem; int main() { fs::create_directory("test_dir"); bool res = fs::create_directory("test_dir"); if (res) { cout << "Directory created" << endl; } else { cout << "Directory already exists" << endl; } return 0; }

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

"Directory already exists"

Пример

Давайте создадим директорию с использованием объекта ошибки для проверки на исключительные ситуации:

#include <iostream> #include <filesystem> using namespace std; namespace fs = std::filesystem; int main() { error_code ec; bool res = fs::create_directory("new_dir", ec); if (ec) { cout << "Error: " << ec.message() << endl; } else if (res) { cout << "Directory created" << endl; } else { cout << "Directory already exists" << endl; } return 0; }

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

"Directory created"

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

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