long hFile;
{
::AfxMessageBox("No image files in current directory!/n" ) ;
}
{
do {
}
_findclose(hFile);
2.利用CFileFind类较简洁的实现该功能
void CModelDlg::FindBmpFile(CString strFoldername)
{
CString m_cstrFileList=”";
CFileFind tempFind;
BOOL bFound; //判断是否成功找到文件
bFound=tempFind.FindFile(strFoldername + “\\*.*”); /修改” “内内容给限定查找文件类型
CString strTmp; //如果找到的是文件夹 存放文件夹路径
while(bFound) //遍历所有文件
{
bFound=tempFind.FindNextFile(); //第一次执行FindNextFile是选择到第一个文件,以后执行为选择
//到下一个文件
if(tempFind.IsDots()) continue; //如果找到的是返回上层的目录 则结束本次查找。每个目录下都有缺省的两个目录,名称分别为 '. '和 '.. ',分别代表上一层目录和本层目录。
if(tempFind.IsDirectory()) //找到的是文件夹,则遍历该文件夹下的文件
{
strTmp=”";
strTmp=tempFind.GetFilePath();
FindFile(strTmp);
}
else
{
strTmp=tempFind.GetFileName(); //保存文件名,包括后缀名
// 在此处添加对找到文件的处理
}
}
tempFind.Close();
return;
}
其他CFileFind类成员函数请参见MSDN
Related posts:
本文介绍了在VC环境下两种遍历文件夹的方法:一是使用_findfirst和_findnext函数结合_finddata_t结构体;二是利用CFileFind类进行更为简洁的遍历。
3250

被折叠的 条评论
为什么被折叠?



