
C++如何遍历文件夹? 10
展开全部
标准C++目前并没有对文件系统的直接支持——世界上的文件系统千变万化,几乎无法搞出放之四海皆准的库
不过如果局限在 Windows 和 POSIX 兼容操作系统 这两类操作系统的话,难度就低多了。
Boost.Filesystem 库就提供了相关工具。这个库已经被标准化,即是 ISO/IEC TS 18822:2015 标准。最新版的 GCC 和 Visual Studio 部分支持这个库。
Filesystem 库的 recursive_directory_iterator 符合你的需求。
#include <fstream>
#include <iostream>
#include <experimental/filesystem> // 如果是 boost 则改为 #include <boost/filesystem.hpp>
// 如果用的是 Boost.Filesystem 则下一行改成 namespace fs = boost::filesystem;
namespace fs = std::experimental::filesystem;
int main()
{
for(fs::path p: fs::recursive_directory_iterator("路径"))
std::cout << p.filename() << '\n';
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询