阅读量:4
C++ 本身不直接支持递归遍历文件夹,但你可以使用标准库中的 filesystem 库(C++17 起可用)来实现递归遍历文件夹。以下是一个简单的示例:
#include
#include
namespace fs = std::filesystem;
void traverse_directory(const fs::path& path) {
for (const auto& entry : fs::recursive_directory_iterator(path)) {
if (fs::is_regular_file(entry)) {
std::cout << "File: " << entry.path() << std::endl;
} else if (fs::is_directory(entry)) {
std::cout << "Directory: " << entry.path() << std::endl;
traverse_directory(entry.path()); // 递归遍历子目录
}
}
}
int main() {
fs::path root_path = "path/to/your/directory";
traverse_directory(root_path);
return 0;
}
这个示例中,traverse_directory 函数接受一个 fs::path 参数,然后使用 fs::recursive_directory_iterator 遍历指定路径下的所有文件和子目录。如果遇到文件,就输出文件路径;如果遇到子目录,就递归调用 traverse_directory 函数继续遍历子目录。
以上就是关于“c++遍历文件支持递归操作吗”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm