在C++中,你可以使用以下方法來獲取文件夾下所有文件名:
opendir
和readdir
函數來打開和讀取文件夾中的文件。struct dirent
結構體的d_name
成員來獲取文件的名字。以下是一個示例程序,演示了如何獲取文件夾下所有文件名:
#include <iostream>
#include <dirent.h>
#include <string>
#include <vector>
std::vector<std::string> getFilesInFolder(const std::string& folderPath) {
std::vector<std::string> fileList;
DIR* dir;
struct dirent* entry;
// 打開文件夾
dir = opendir(folderPath.c_str());
if (dir == nullptr) {
return fileList;
}
// 讀取文件夾中的文件
while ((entry = readdir(dir)) != nullptr) {
// 忽略當前目錄和上級目錄
if (std::string(entry->d_name) == "." || std::string(entry->d_name) == "..") {
continue;
}
// 將文件名添加到列表中
fileList.push_back(entry->d_name);
}
// 關閉文件夾
closedir(dir);
return fileList;
}
int main() {
std::string folderPath = "/path/to/folder";
std::vector<std::string> fileList = getFilesInFolder(folderPath);
// 打印文件名
for (const auto& file : fileList) {
std::cout << file << std::endl;
}
return 0;
}
請將/path/to/folder
替換為你要讀取文件的文件夾的實際路徑。