使用FindFirstFile,FindNextFile遍历一个文件夹
2012-03-24 18:45
555 查看
//遍历文件夹函数 void TraverseFolder(LPCTSTR lpPath) { TCHAR szFind[MAX_PATH] = {_T("\0")}; WIN32_FIND_DATA findFileData; BOOL bRet; _tcscpy_s(szFind, MAX_PATH, lpPath); _tcscat_s(szFind, _T("\\*.*")); //这里一定要指明通配符,不然不会读取所有文件和目录 HANDLE hFind = ::FindFirstFile(szFind, &findFileData); if (INVALID_HANDLE_VALUE == hFind) { return; } //遍历文件夹 while (TRUE) { if (findFileData.cFileName[0] != _T('.')) {//不是当前路径或者父目录的快捷方式 _tprintf(_T("%s\\%s\n"), lpPath, findFileData.cFileName); if (findFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {//这是一个普通目录 //设置下一个将要扫描的文件夹路径 _tcscpy_s(szFind, MAX_PATH, lpPath); _tcscat_s(szFind, _T("\\")); _tcscat_s(szFind, findFileData.cFileName); ///_tcscat_s(szNextDir, _T("\\*")); //遍历该目录 TraverseFolder(szFind); } } //如果是当前路径或者父目录的快捷方式,或者是普通目录,则寻找下一个目录或者文件 bRet = ::FindNextFile(hFind, &findFileData); if (!bRet) {//函数调用失败 //cout << "FindNextFile failed, error code: " // << GetLastError() << endl; break; } } ::FindClose(hFind); }
相关文章推荐
- 使用FindFirstFile,FindNextFile遍历一个文件夹
- 使用FindFirstFile,FindNextFile遍历一个文件夹
- 使用FindFirstFile,FindNextFile遍历一个文件夹
- 使用FindFirstFile,FindNextFile遍历一个文件夹
- 使用FindFirstFile,FindNextFile遍历一个文件夹
- 用FindFirstFile和FindNextFile遍历一个文件夹
- Windows Explorer(浏览)对话框和遍历文件夹及其子目录函数(FindFisrFile FindNextFile CloseFind)使用
- windows系统下使用FindFirstFile 和 FindNextFileA遍历某目录下的所有文件(c++编写)
- 利用FindFirstFile()以及FindNextFile()函数 实现遍历文件夹里的文件
- 采用vector建立栈的方式,打印文件夹下所有文件名称(FindFirstFile与FindNextFile的使用)
- 利用FindFirstFile和FindNextFile查找文件或遍历文件夹
- FindFile FindNextFile 如何遍历一个文件夹并获取里面文件的信息
- FtpFindFirstFile和InternetFindNextFile遍历ftp文件
- C/C++:遍历子目录,枚举文件,FindFirstFile + FindNextFile
- C/C++:遍历子目录,枚举文件,FindFirstFile + FindNextFile
- 使用Windows提供的FindFirstFile和FindNextFile获取目录下的文件名
- FindFirstFile和FindNextFile的使用
- C/C++:遍历子目录,枚举文件,FindFirstFile + FindNextFile
- 使用FindFirstFile和FindNextFile查找某个目录下的所有文件(包括子目录)
- 一段旧代码 ———— findfirstfile遍历文件夹