C++ 遍历目录:使用 std::filesystem 轻松实现

在 C++ 中,你可以使用 std::filesystem 命名空间提供的功能来方便地遍历目录。以下代码展示了如何使用 directory_iterator 类来遍历一个目录并输出目录中的文件和子目录:

#include <iostream>
#include <filesystem>

namespace fs = std::filesystem;

int main() {
    std::string path = 'path/to/directory';

    for (const auto& entry : fs::directory_iterator(path)) {
        if (entry.is_directory()) {
            std::cout << 'Found directory: ' << entry.path() << std::endl;
        } else if (entry.is_regular_file()) {
            std::cout << 'Found file: ' << entry.path() << std::endl;
        }
    }

    return 0;
}

在这个示例中,我们首先包含了 iostreamfilesystem 头文件。然后,我们使用 namespace fs = std::filesystem; 来简化代码中的命名空间引用。接着,我们定义了一个字符串 path 来存储要遍历的目录路径。

for 循环中,我们使用 fs::directory_iterator(path) 创建了一个迭代器,并使用 const auto& entry 来遍历目录中的每个条目。对于每个条目,我们使用 entry.is_directory()entry.is_regular_file() 方法来判断该条目是目录还是文件,并输出相应的信息。

使用 std::filesystem 库,你可以轻松地实现 C++ 中的目录遍历操作。你还可以使用其他方法来获取文件或目录的属性,例如大小、修改时间等等。

C++ 遍历目录:使用 std::filesystem 轻松实现

原文地址: https://www.cveoy.top/t/topic/f0rI 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录