windows遍歷資料夾程式碼
阿新 • • 發佈:2019-01-07
#include<windows.h>
#include<set>
#include<string>
#include<iostream>
using namespace std;
//遍歷資料夾函式
void traverseFolder(char *pszDir, set<string> &fileSet)
{
WIN32_FIND_DATA fileData;
HANDLE hFind = ::FindFirstFile(pszDir, &fileData);
if (INVALID_HANDLE_VALUE == hFind) {
return ;
}
while (TRUE) {
string filename(fileData.cFileName);
fileSet.insert(filename);
if (!::FindNextFile(hFind, &fileData)) {
break;
}
}
::FindClose(hFind);
}
int main()
{
set<string> myFolder;
char *folderName = "D:\\doc\\*";//*是萬用字元
traverseFolder(folderName, myFolder);
for(set<string>::iterator iter = myFolder.begin(); iter != myFolder.end(); ++iter)
{
cout<<*iter<<endl;
}
cout<<"------------"<<endl;
return 0;
}