Как определить расширения файла на c++?

Пользователь

от delphine_bartoletti , в категории: C/C++ , год назад

Как определить расширения файла на c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от violette_robel , год назад

@delphine_bartoletti 

Для определения расширения файла на C++ можно использовать функции из стандартной библиотеки языка.


Пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
#include <iostream>
#include <string>

int main() {
    std::string filename = "example.txt";
    size_t dot_pos = filename.find_last_of(".");
    if (dot_pos == std::string::npos) {
        std::cout << "File has no extension" << std::endl;
    } else {
        std::string extension = filename.substr(dot_pos + 1);
        std::cout << "File extension is: " << extension << std::endl;
    }
    return 0;
}


В этом примере мы используем метод find_last_of() для поиска последней точки в имени файла. Если точка не найдена, мы выводим сообщение о том, что файл не имеет расширения. В противном случае мы используем метод substr() для извлечения подстроки, начиная с позиции, следующей за точкой. Эта подстрока и будет расширением файла.