首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

用遍历查找123.jpg的后缀名解决方案

2012-05-28 
用遍历查找123.jpg的后缀名如题~~本人新手~希望高手门能提供一下简单的代码,不用太多的错误判断~!基本能实

用遍历查找123.jpg的后缀名
如题~~本人新手~希望高手门能提供一下简单的代码,不用太多的错误判断~!基本能实现就行了~!谢谢

用API函数或者UNIX下的函数实现都可以,别MFC就行了,在线等

[解决办法]
#include <windows.h>
#include <iostream>
using namespace std;

static TCHAR hardDevice[][3]={"C:","D:","E:","F:"}; 

bool Search(TCHAR *Path,TCHAR *File);

void main()
{
int n = sizeof(hardDevice)/(sizeof(hardDevice[0])*sizeof(TCHAR));
for(int i=0;i<4;i++) 
Search(hardDevice[i],"新建文本文档.txt"); 
}


bool Search(TCHAR *Path,TCHAR *File)
{
HANDLE hFind;
WIN32_FIND_DATA wfd;

ZeroMemory(&wfd,sizeof(WIN32_FIND_DATA));
TCHAR PathTemp[512];
memset(PathTemp,0,sizeof(PathTemp));
sprintf(PathTemp,"%s\\*.*",Path);
hFind=FindFirstFile(PathTemp,&wfd);
if(INVALID_HANDLE_VALUE==hFind)
return false;


do
{
if('.'==wfd.cFileName[0])
{
continue;
}

if(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
sprintf(PathTemp,"%s\\%s",Path,wfd.cFileName);
Search(PathTemp,File);
}
else
{
if(0==strcmp(File,wfd.cFileName))
{
sprintf(PathTemp,"%s\\%s",Path,wfd.cFileName);
printf("%s\r\n",PathTemp); 
}
}

}while(FindNextFile(hFind,&wfd));

FindClose(hFind);

return true;

}

热点排行