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

Метод stem

Метод stem класса path возвращает имя файла без расширения. Если путь содержит расширение, оно отбрасывается. Метод не принимает параметров и возвращает объект path, содержащий часть пути без расширения. Сама исходная переменная при этом не изменяется.

Синтаксис

path.stem()

Пример

Давайте получим имя файла без расширения из пути /var/www/index.html:

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

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

"index"

Пример

Если у файла несколько точек, расширением считается только последняя часть. Давайте получим имя файла из пути /home/user/archive.tar.gz:

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

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

"archive.tar"

Пример

Если файл не имеет расширения, метод stem возвращает всё имя файла целиком. Давайте получим имя файла из пути /home/user/readme:

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

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

"readme"

Пример

Если путь оканчивается точкой, метод stem вернёт пустую строку. Давайте проверим это на пути /home/user/file.:

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

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

<+cpp+> <-cpp->

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

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