如何以编程方式获取目录中的文件列表

时间:2011-06-12 06:42:56

标签: c++ visual-c++

我已搜索过所有内容,但我找不到使用VS C ++ 2008的源代码 你有没有办法以编程方式查找目录中的文件列表?

我在Windows上使用VS 2008 C ++。

2 个答案:

答案 0 :(得分:6)

这将在C:驱动器中找到文件列表,它不使用dirent.h只是简单的文件处理api,
FindFirstFile &的 FindNextFile

#include <windows.h>

int main(int argc, char* argv[])
{
   WIN32_FIND_DATA search_data;

   memset(&search_data, 0, sizeof(WIN32_FIND_DATA));

   HANDLE handle = FindFirstFile("c:\\*", &search_data);

   while(handle != INVALID_HANDLE_VALUE)
   {
      cout<<"\n"<<search_data.cFileName;

      if(FindNextFile(handle, &search_data) == FALSE)
        break;
   }

   //Close the handle after use or memory/resource leak
   FindClose(handle);
   return 0;
}

你应该看一下msdn网站上的标准api。

答案 1 :(得分:4)

如果您正在使用Boost,那么您可以使用boost :: filesystem。

如果您使用的是Qt,那么您可以使用QDir。