MFC下查找某文件夾下所有文件

本例以當前程序所在文件夾爲例,匹配其下所有文件。

#include <stdio.h>
#include <afx.h>

void main()
{
	//獲取該程序全路徑
	TCHAR exeFullPath[MAX_PATH];
	GetModuleFileName(NULL,exeFullPath,MAX_PATH);
	printf("%s\n",exeFullPath);

	//提取文件夾
	char * pdest = strrchr( exeFullPath, '\\' );
	int  iPos = pdest - exeFullPath + 1;
	char szCurPath[MAX_PATH];
	memset(szCurPath,0,MAX_PATH);
	strncpy(szCurPath,exeFullPath,iPos);
	printf("%s\n",szCurPath);

	CString strFileToFind;
	strFileToFind.Format("%s*.*",szCurPath); //此處匹配該文件夾所有文件

	CFileFind finder;
	BOOL bWorking = finder.FindFile(strFileToFind);
	while(bWorking)
	{
		bWorking = finder.FindNextFile();
		if(!finder.GetFileName().Compare(".") || !finder.GetFileName().Compare(".."))
			continue;
		printf("%s\n",finder.GetFilePath());//此處可以用CStringArray來接收如:CStringArray strFileNameAr; strFileNameArr.Add(finder.GetFilePath());
	}
	finder.Close();
	getchar();
}
發佈了21 篇原創文章 · 獲贊 4 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章