21xrx.com
2024-09-19 10:13:51 Thursday
登录
文章检索 我的文章 写文章
C++如何获取指定目录下所有文件列表
2023-07-07 14:55:09 深夜i     --     --
C++ 获取 指定目录 文件列表

C++作为一门流行的编程语言,在处理文件操作时有着十分优秀的表现。获取指定目录下的所有文件列表也不例外。在本篇文章中,我们将探讨C++如何获取指定目录下的所有文件列表。

首先,我们需要头文件 ,这个头文件提供了操作目录的函数。函数opendir()可以打开一个目录,并返回目录指针,readdir()可以读取目录中的文件夹和文件。具体代码实现如下:


#include <dirent.h>

#include <iostream>

#include <string>

#include <vector>

using namespace std;

vector<string> getFiles(string filePath) {

  DIR *dir;

  vector<string> files;

  struct dirent *ptr;

  if ((dir = opendir(filePath.c_str())) != nullptr) {

    while ((ptr = readdir(dir)) != nullptr) {

      if (ptr->d_type == DT_REG) {

        files.push_back(ptr->d_name);

      }

    }

    closedir(dir);

  }

  return files;

}

int main() {

  vector<string> files = getFiles("C:/test");

  for (int i = 0; i < files.size(); i++) {

    cout << files[i] << endl;

  }

  return 0;

}

在上述代码中,我们定义了函数getFiles()来获取目录下所有文件名,参数filePath为目标路径。我们使用opendir()打开该路径,读取每个文件和文件夹,如果是文件则返回文件名。

最后,在main()中我们调用getFiles()函数并输出文件名列表。这里filePath测试使用"C:/test"路径,请根据实际路径调整。

总结一下,使用C++获取指定目录下的所有文件列表只需调用opendir()和readdir()函数即可,逻辑简单,对于初学者来说,十分友好。如果你还没有学过C++,那么现在是时候学习一下了,具体操作还需要自己动手尝试。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复