在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
函數關閉已打開的目錄。