温馨提示×

c++遍历文件夹的方法有哪些

c++
小亿
83
2024-03-26 16:13:47
栏目: 编程语言

  1. 使用标准库中的<filesystem>头文件,可以使用std::filesystem::directory_iterator类来遍历文件夹中的文件和子文件夹。
#include <filesystem>
#include <iostream>

namespace fs = std::filesystem;

int main() {
    fs::path folder_path("path_to_folder");

    for (const auto& entry : fs::directory_iterator(folder_path)) {
        std::cout << entry.path() << std::endl;
    }

    return 0;
}
  1. 使用Windows API中的FindFirstFileFindNextFile函数来遍历文件夹中的文件和子文件夹。
#include <windows.h>
#include <iostream>

int main() {
    WIN32_FIND_DATA findFileData;
    HANDLE hFind = FindFirstFile("path_to_folder\\*", &findFileData);

    if (hFind == INVALID_HANDLE_VALUE) {
        std::cerr << "Error in finding the first file!" << std::endl;
        return 1;
    }

    do {
        std::cout << findFileData.cFileName << std::endl;
    } while (FindNextFile(hFind, &findFileData) != 0);

    FindClose(hFind);

    return 0;
}

这两种方法都能够遍历文件夹中的文件和子文件夹,可以根据具体的需求选择合适的方法。

0