>  기사  >  백엔드 개발  >  C++를 사용하여 파일 확장자를 얻는 방법은 무엇입니까?

C++를 사용하여 파일 확장자를 얻는 방법은 무엇입니까?

王林
王林원래의
2024-06-05 12:23:561037검색

C++에서 파일 확장자를 얻는 방법에는 두 가지가 있습니다. 문자열 조작 함수 std::find를 사용하여 확장자 구분 기호를 찾으세요. Boost 라이브러리에 있는 Boost::filesystem::path 클래스의 확장 기능을 사용하십시오.

C++를 사용하여 파일 확장자를 얻는 방법은 무엇입니까?

C++에서 파일 확장자를 가져오는 방법

C++에서 파일 확장자를 가져오는 데 도움이 될 수 있습니다.

  • 다양한 파일 형식을 식별하고 처리합니다.
  • 입력 파일 이름에 유효한 확장자가 있는지 확인
  • 파일 구현 보관 및 관리

방법 1: 문자열 연산 사용

표준 라이브러리 함수 std::find를 사용하여 파일 경로 구분 기호의 마지막 점(예: 확장자)을 찾을 수 있습니다. std::find 来查找文件路径中的最后一个点(即扩展名分隔符)。

#include <iostream>
#include <string>

std::string get_file_extension(const std::string& filename) {
  auto last_dot = filename.find_last_of('.');
  if (last_dot == std::string::npos) {
    return "";  // 没有扩展名
  }
  return filename.substr(last_dot + 1);
}

int main() {
  std::string filename = "example.txt";
  std::cout << "File extension: " << get_file_extension(filename) << std::endl;
  return 0;
}

方法二:使用 boost::filesystem

如果你使用的是 Boost 库,可以使用 boost::filesystem::path 类中的 extension

#include <boost/filesystem.hpp>

std::string get_file_extension(const std::string& filename) {
  boost::filesystem::path path(filename);
  return path.extension().string();
}

int main() {
  std::string filename = "example.txt";
  std::cout << "File extension: " << get_file_extension(filename) << std::endl;
  return 0;
}

🎜방법 2: boost::filesystem 사용🎜🎜🎜Boost 라이브러리를 사용하는 경우 boost::filesystem::path 클래스 코드>를 사용할 수 있습니다. 확장 기능. 🎜아아아아

위 내용은 C++를 사용하여 파일 확장자를 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.