c++读取文件夹中全部文件名并输出
时间: 2023-08-04 16:27:54 浏览: 96
在C++中,可以使用`<dirent.h>`头文件中的`opendir()`、`readdir()`和`closedir()`等函数来读取文件夹中的全部文件名,并输出到控制台。以下是一个简单的示例代码:
```c++
#include <iostream>
#include <dirent.h>
int main() {
DIR* dir;
struct dirent* ent;
if ((dir = opendir(".")) != nullptr) { // 打开当前目录
while ((ent = readdir(dir)) != nullptr) { // 读取目录中的文件
std::cout << ent->d_name << std::endl; // 输出文件名
}
closedir(dir); // 关闭目录
} else {
std::cout << "打开目录失败" << std::endl;
}
return 0;
}
```
以上代码中,`opendir()`函数打开当前目录,返回一个指向`DIR`结构体的指针。`readdir()`函数读取目录中的文件,并返回一个指向`dirent`结构体的指针,其中包含文件名等信息。`closedir()`函数关闭目录。
需要注意的是,`readdir()`函数会将当前目录下的`.`和`..`也读取出来,因此需要在代码中进行过滤。如果需要读取指定目录下的文件,只需要将`opendir()`函数中的`.`替换为目录名即可。
阅读全文