c++遍历文件夹中的文件名
时间: 2024-10-23 21:12:11 浏览: 23
在C++中,遍历文件夹中的文件名通常需要使用一些操作系统特定的功能,如Windows下的`FindFirstFile`函数或者POSIX系统下的`opendir`, `readdir`等库函数。这里提供一种基于`<filesystem>`库的方法,适用于C++17及以上版本:
```cpp
#include <iostream>
#include <filesystem>
void listFilesInDirectory(std::string directoryPath) {
for (const auto &entry : std::filesystem::directory_iterator(directoryPath)) {
if (!entry.is_directory()) { // 只列出文件,忽略目录
std::cout << entry.path().filename() << "\n"; // 文件名
}
}
}
int main() {
try {
std::string dirToSearch = "path_to_your_directory";
listFilesInDirectory(dirToSearch);
} catch (std::filesystem::filesystem_error &e) {
std::cerr << "Error occurred: " << e.what() << '\n';
}
return 0;
}
```
在这个例子中,`listFilesInDirectory`函数接受一个路径作为参数,然后使用`directory_iterator`遍历该目录中的每个元素。如果元素不是目录,则获取其文件名并打印出来。
阅读全文