Windows 遍历文件夹下所有文件和文件夹
来源:互联网 发布:ue软件算法 编辑:程序博客网 时间:2024/05/04 06:32
1.使用网上最普通的方法
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);
}
2.利用CFileFind类较简洁的实现该功能
void CModelDlg::FindBmpFile(CString strFoldername)<?XML:NAMESPACE PREFIX = O />
{
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;
}
- Windows 遍历文件夹下所有文件和文件夹
- 遍历文件夹下所有文件和文件夹
- 遍历一个文件夹下所有的文件和子文件夹
- VC遍历文件夹下所有文件和文件夹
- VC遍历文件夹下所有文件和文件夹
- 遍历一个文件夹下的所有文件和子文件夹
- VC遍历文件夹下所有文件和文件夹
- VC遍历文件夹下所有文件和文件夹
- VC遍历文件夹下所有文件和文件夹
- Java 遍历文件夹下的所有文件和文件夹
- VC遍历文件夹下所有文件和文件夹等技巧
- php 遍历一个文件夹下的所有文件和文件夹
- PHP遍历文件夹下所有文件和子文件夹
- VC遍历文件夹下所有文件和文件夹
- 遍历一个文件夹下的所有文件和子文件夹
- VC遍历文件夹下所有文件和文件夹
- php遍历某文件夹下的所有文件和文件夹
- 遍历文件夹下所有文件
- MySQL 5.6 Replication - Enabling the Next Generation of Web & Cloud Services
- 秋天asp.net广告图片切换控件
- 学习Linux(创建、删除文件和文件夹命令)
- 用一个宏定义求结构体某个变量相对编移量
- java---序列化
- Windows 遍历文件夹下所有文件和文件夹
- 统计建模与数据分析
- 我的.Xresources
- Ruby 资源
- hdu 3045 Picnic Cows
- 第九周实验报告4
- cisco DTP
- NSDate addTimeInterval Deprecated in iOS 4.0
- Android进程间通信(IPC)机制Binder简要介绍和学习计划