#include <iostream>
#include <filesystem>
namespace fs = std::filesystem;
void traverse_directory(const fs::path& directory) {
if (fs::exists(directory) && fs::is_directory(directory)) {
for (const auto& entry : fs::recursive_directory_iterator(directory)) {
std::cout << entry.path() << std::endl;
}
} else {
std::cerr << "The provided path is not a valid directory." << std::endl;
}
}
int main() {
fs::path target_directory = "./example_directory"; // 替换为你要遍历的文件夹路径
traverse_directory(target_directory);
return 0;
}
引入头文件:
#include <iostream>:用于标准输入输出。#include <filesystem>:C++17 引入的标准库,提供文件系统操作功能。命名空间别名:
namespace fs = std::filesystem;:简化 std::filesystem 的使用,方便代码编写。函数定义:
traverse_directory(const fs::path& directory):定义一个函数,接收一个文件夹路径作为参数,递归遍历该文件夹及其子文件夹中的所有文件和子文件夹。if (fs::exists(directory) && fs::is_directory(directory)):检查提供的路径是否存在且是否为目录。for (const auto& entry : fs::recursive_directory_iterator(directory)):使用 recursive_directory_iterator 迭代器遍历目录及其子目录中的每个条目,并打印其路径。主函数:
int main():程序入口。fs::path target_directory = "./example_directory";:指定要遍历的目标文件夹路径(请根据实际情况修改)。traverse_directory(target_directory);:调用遍历函数。上一篇:c++多态性是指
下一篇:c++ |=
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站