[c++] 파일 및 디렉토리 필터링하기

아래의 예제에서는 특정 확장자를 가진 파일만 출력하는 방법을 살펴보겠습니다.

#include <iostream>
#include <filesystem>

int main() {
    std::string path = "your_directory_path";
    std::string extension_filter = ".txt"; // 필터링할 확장자

    for (const auto& entry : std::filesystem::directory_iterator(path)) {
        if (entry.is_regular_file() && entry.path().extension() == extension_filter) {
            std::cout << entry.path() << std::endl; // 필터링된 파일 출력
        }
    }
    return 0;
}

위 코드에서는 std::filesystem::directory_iterator를 사용하여 디렉토리 안의 모든 엔트리를 반복하고, is_regular_file()을 사용하여 파일을 확인한 후, 원하는 확장자를 가진 파일만 출력합니다.

또한, 이와 유사한 방법으로 디렉토리 필터링도 가능합니다. 자세한 내용은 cppreference를 참조하시기 바랍니다.