vc遍历文件夹

来源:互联网 发布:python find()如实现 编辑:程序博客网 时间:2024/05/17 00:06
#include<windows.h>
#include<iostream>
#include<string>
#include<vector>
using namespace std;

vector<string> FindFile(string dir)
{
vector<string> allFile;
    WIN32_FIND_DATA FindFileData;
    dir += "\\*.*";
    HANDLE hFind=::FindFirstFile(dir.c_str(),&FindFileData);
    if(INVALID_HANDLE_VALUE == hFind)
{
return allFile;
}
   
    while(TRUE)
    {
// 忽略文件夹
        if(!(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
        {
allFile.push_back(FindFileData.cFileName);
        }
        if(!FindNextFile(hFind,&FindFileData))
{
break;
}
    }
    FindClose(hFind);
    return allFile;
}


int main()
{
vector<string> vec = FindFile("F:\\8M-cap");//文件夹路径
for(vector<string>::size_type i = 0 ; i != vec.size(); i++)
{
cout<<vec[i]<<endl;
}
}