网上得到代码有获取指定目录下所有文件名,无路径信息,不能指定文件类型,如下:
#include <iostream>
#include <windows.h>
#include <cstring>
using namespace std;
void ListFile(char* szDir)
{
char szTempDir[MAX_PATH+1];
strcpy(szTempDir,szDir);
strcat(szTempDir,"*");
HANDLE hFindFile;
WIN32_FIND_DATA FileData;
hFindFile = FindFirstFile(szTempDir,&FileData);
if( hFindFile == INVALID_HANDLE_VALUE )
{
return ;
}
else
{
do
{
if( (FileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
&& strcmp(FileData.cFileName,".")
&& strcmp(FileData.cFileName,".."))
{
char szNewDir[MAX_PATH+1];
strcpy(szNewDir,szDir);
strcat(szNewDir,FileData.cFileName);
strcat(szNewDir,"//");
ListFile(szNewDir);
}
else
{
cout<<szDir<<FileData.cFileName<<endl;
}
}
while(FindNextFile(hFindFile,&FileData));
FindClose(hFindFile);
}
}
int main()
{
char szPath[MAX_PATH+1];
while(cin>>szPath)
{
if(szPath[strlen(szPath)-1]!='//')
strcat(szPath,"//");
ListFile(szPath);
}
return 0;
}
改造后的代码:
未完待续。。。。