C++怎么讀取文件夾中的所有文件

c++
小億
489
2024-04-15 18:14:09

要在C++中讀取文件夾中的所有文件,可以使用標(biāo)準(zhǔn)庫(kù)中的<filesystem>頭文件。下面是一個(gè)簡(jiǎn)單的示例代碼,演示如何遍歷文件夾中的所有文件:

#include <iostream>
#include <filesystem>

namespace fs = std::filesystem;

int main() {
    // 指定要遍歷的文件夾路徑
    fs::path folderPath = "path_to_folder";

    // 檢查文件夾是否存在
    if (!fs::exists(folderPath) || !fs::is_directory(folderPath)) {
        std::cerr << "Folder does not exist." << std::endl;
        return 1;
    }

    // 遍歷文件夾中的所有文件
    for (const auto& entry : fs::directory_iterator(folderPath)) {
        std::cout << entry.path().filename() << std::endl;
    }

    return 0;
}

在上面的代碼中,首先指定要遍歷的文件夾路徑,然后使用fs::directory_iterator來(lái)遍歷文件夾中的所有文件。對(duì)于每個(gè)文件,我們輸出其文件名。

需要注意的是,以上代碼需要C++17標(biāo)準(zhǔn)及以上版本的支持。如果你使用的是更早的C++標(biāo)準(zhǔn),可能需要使用其他庫(kù)或方法來(lái)實(shí)現(xiàn)相同的功能。

0