在C++中,opendir
和readdir
函数用于读取目录中的文件和子目录
#include<iostream>
#include<string>
#include <dirent.h> // 包含 dirent.h 头文件
int main() {
// 要打开的目录
std::string dir_name = "/path/to/your/directory";
// 使用 opendir 函数打开目录
DIR *dir = opendir(dir_name.c_str());
if (dir == nullptr) {
std::cerr << "Error: Cannot open directory"<< std::endl;
return 1;
}
// 使用 readdir 函数读取目录中的每个条目
struct dirent *entry;
while ((entry = readdir(dir)) != nullptr) {
// 输出文件或子目录名称
std::cout<< entry->d_name<< std::endl;
}
// 关闭目录
closedir(dir);
return 0;
}
这个示例程序首先使用opendir
函数打开指定的目录。然后,它使用readdir
函数循环读取目录中的每个条目,并输出文件或子目录的名称。最后,记得使用closedir
函数关闭已打开的目录。