mfc遍历文件夹

一 获取指定目录下当前文件夹和文件的路径

 

以获取D://test目录下的文件夹和文件为例

void CdirectoryDlg::BrowseCurrentDir(CString strDir)
{
	CFileFind finder;
	CString strPath;
	BOOL bWorking = finder.FindFile(strDir);
	while (bWorking)
	{
		bWorking = finder.FindNextFile();
		strPath=finder.GetFilePath();
		//strPath就是所要获取Test目录下的文件夹和文件(包括路径)

	}
	finder.Close();
}

调用方式:

BrowseCurrentDir(_T("D://test//*.*"));

 

二获取指定目录下的所有文件的路径

 

以获取D://test目录下所有文件路径为例

void CdirectoryDlg::BrowseCurrentAllFile(CString strDir)
{
	if(strDir == _T(""))
	{
		return;
	}
	else
	{
		if(strDir.Right(1) != _T("//"))
			strDir += L"//";
		strDir =strDir+_T("*.*");
	}
	CFileFind finder;
	CString strPath;
	BOOL bWorking = finder.FindFile(strDir);
	while(bWorking)
	{
		bWorking = finder.FindNextFile();
		strPath = finder.GetFilePath();
		if(finder.IsDirectory() && !finder.IsDots())
		{
			BrowseCurrentAllFile(strPath); //递归调用
		}
		else if(!finder.IsDirectory() && !finder.IsDots())
		{
			//strPaht就是所要获取的文件路径
			CString path=strPath;
		}

	}
}

 

调用方式:

BrowseCurrentAllFile(_T("D://test"));

原文地址:http://blog.csdn.net/flyfish1986/article/details/5372427

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值