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

Метод remove_filename

Метод remove_filename класса path удаляет имя файла из объекта пути, оставляя только родительскую директорию. Метод изменяет текущий объект path и возвращает ссылку на него. Параметров метод не принимает. Если путь уже содержит только директорию, метод удалит последний компонент, который считается именем файла.

Синтаксис

path& remove_filename();

Пример

Давайте создадим объект path с полным путём к файлу и удалим из него имя файла:

#include <iostream> #include <filesystem> using namespace std; namespace fs = std::filesystem; int main() { fs::path p = "/var/www/index.html"; p.remove_filename(); cout << p << endl; return 0; }

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

"/var/www/"

Пример

Давайте применим метод remove_filename к пути, который содержит только директорию:

#include <iostream> #include <filesystem> using namespace std; namespace fs = std::filesystem; int main() { fs::path p = "/var/www"; p.remove_filename(); cout << p << endl; return 0; }

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

"/var/"

Пример

Давайте покажем, что метод возвращает ссылку на изменённый объект path, и выведем результат цепочкой:

#include <iostream> #include <filesystem> using namespace std; namespace fs = std::filesystem; int main() { fs::path p = "/home/user/abcde.txt"; cout << p.remove_filename() << endl; return 0; }

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

"/home/user/"

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

  • метод filename,
    который возвращает имя файла из пути
  • метод replace_filename,
    который заменяет имя файла в пути
  • метод parent_path,
    который возвращает родительскую директорию
  • метод stem,
    который возвращает имя файла без расширения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить