C++遍历文件夹下文件的方法
本文实例讲述了C++遍历文件夹下文件的方法。分享给大家供大家参考。具体如下:
#include<windows.h> #include<stdio.h> #include<string.h> #defineLEN1024 //深度优先递归遍历目录中所有的文件 BOOLDirectoryList(LPCSTRPath) { WIN32_FIND_DATAFindData; HANDLEhError; intFileCount=0; charFilePathName[LEN]; //构造路径 charFullPathName[LEN]; strcpy(FilePathName,Path); strcat(FilePathName,"\\*.*"); hError=FindFirstFile(FilePathName,&FindData); if(hError==INVALID_HANDLE_VALUE) { printf("搜索失败!"); return0; } while(::FindNextFile(hError,&FindData)) { //过虑.和.. if(strcmp(FindData.cFileName,".")==0 ||strcmp(FindData.cFileName,"..")==0) { continue; } //构造完整路径 wsprintf(FullPathName,"%s\\%s",Path,FindData.cFileName); FileCount++; //输出本级的文件 printf("\n%d%s",FileCount,FullPathName); if(FindData.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY) { printf("<Dir>"); DirectoryList(FullPathName); } } return0; } voidmain() { DirectoryList("D:eclipse-J2EE"); }
希望本文所述对大家的C++程序设计有所帮助。