如何使用C或C ++获取文件夹及其所有子文件夹中的文件列表?

时间:2016-04-25 08:06:49

标签: c++ c list directory

我想获取文件夹中的文件列表,如果里面有任何子文件夹,我也想要这些子文件夹中的文件列表。

我已经阅读了这个问题 How can I get the list of files in a directory using C or C++?
但它并没有帮我解决所有问题。

我想要的就是这样的功能:

vector<string> fileList;

//return the number of files within a folder.
// @ dir: the folder directory
// @ list: the output list of files
// @ filetype: could be multiple similar types

int getFileListFrom(const string & dir, vector<string>:: list, 
    const string & filetype);
int getFileListFrom(const string & dir, vector<string>:: list, 
    const vector<string> & filetypes);

我希望这个功能可以按如下方式使用(假设):

//Example1
fileNum1 = getFileListFrom("C:\\Program Files(x69)\\PornoX", list1, "avi");

//Example2
fileNum2 = getFileListFrom("D:\\myWorkspace\\Documentations\\", list2,
  vector<string>("doc","docx","pdf","txt"));

我使用的是Windows x86系统,所以不要担心跨平台问题。此外,如果需要任何第三方软件包,请提供下载链接和文档。

任何帮助都将深表感谢!

0 个答案:

没有答案