如何用VC60实现类似windows搜索文件的功能,针对文件夹中包含的文件名进行模糊查

来源:互联网 发布:java服务器开发教程 编辑:程序博客网 时间:2024/04/26 20:52

转自:http://wenda.so.com/q/1384705480060703

以下代码 递归遍历 一个文件夹内的所有文件夹和文件:

find(char * lpPath){ char szFind[MAX_PATH]; WIN32_FIND_DATA FindFileData; strcpy(szFind,lpPath); strcat(szFind,"\\*.*"); HANDLE hFind=::FindFirstFile(szFind,&FindFileData); if(INVALID_HANDLE_VALUE == hFind) return; while(TRUE) { if(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) { if(FindFileData.cFileName[0]!='.') { strcpy(szFile,lpPath); strcat(szFile,"\\"); strcat(szFile,FindFileData.cFileName); find(szFile); } } else { cout << FindFileData.cFileName; } if(!FindNextFile(hFind,&FindFileData)) break; } FindClose(hFind);}


剩下的就是关键字与文件名的比较了, 如果你说的模糊查询指的是文件名包含关键字, 那用strstr比较就可以了.

0 0
原创粉丝点击