|
发表于 2023-7-24 20:53:30
|
显示全部楼层
回帖奖励 +2 鱼币
通过使用opendir、readdir和closedir函数,可以读取目录下的文件夹名称并保存到数组中。下面是一个示例代码,你可以尝试在VS2019中运行它:
- #include <iostream>
- #include <string>
- #include <vector>
- #include <dirent.h>
- int main() {
- std::string folderPath = "目录路径"; // 替换为你要读取的目录路径
- std::vector<std::string> folderNames;
- DIR* dir;
- struct dirent* entry;
- // 打开目录
- dir = opendir(folderPath.c_str());
- if (dir != NULL) {
- // 读取目录中的文件和文件夹
- while ((entry = readdir(dir)) != NULL) {
- // 排除当前目录和上级目录
- if (std::string(entry->d_name) == "." || std::string(entry->d_name) == "..") {
- continue;
- }
- // 判断是否是文件夹
- if (entry->d_type == DT_DIR) {
- folderNames.push_back(entry->d_name);
- }
- }
- closedir(dir);
- } else {
- std::cout << "无法打开目录!" << std::endl;
- return 1;
- }
- // 输出文件夹名称
- for (const auto& folderName : folderNames) {
- std::cout << folderName << std::endl;
- }
- return 0;
- }
复制代码
请将`目录路径`替换为你要读取的目录的实际路径。运行该代码后,文件夹名称将保存在`folderNames`数组中并进行输出。希望这可以帮助到你!如果还有其他问题,请随时提问。 |
|