본문 바로가기

API / MFC/Tip / Information

FindFirstFile 함수를 이용한 파일 찾기

/***********************************************
C:\\Program Files\\TEST\\ 
=====================================
1_a.txt, 1_b.txt

파일이 있다고 가정
***********************************************/


HANDLE fileSearch;
WIN32_FIND_DATA wfd;
CString musiccount;
CString findFirstFileName;
CString findSecondFileName;


musiccount.Format(_T("C:\\Program Files\\TEST\\1_*.*"));


fileSearch = FindFirstFile(musiccount, &wfd);
// FindFirstFile 함수를 통해 검색하려고 하는 파일이 없을 경우 
// 핸들 값은 INVALID_HANDLE_VALUE 값을 가짐

// 찾는 파일이 있다면, 
if(fileSearch != INVALID_HANDLE_VALUE)
{
	findFirstFileName.Format(_T("%s"), wfd.cFileName);	
	
	// FindNextFile 리턴 값으로 다음값이 있을 경우 TRUE 
	// 없을 경우 FALSE 값 리턴
	FindNextFile(fileSearch, &wfd);
	
	findSecondFileName.Format(_T("%s"), wfd.cFileName);	

	// 파일 찾기 핸들 값 닫기	
	FindClose(fileSearch);
}

/***********************************************
findFirstFileName => 1_a.txt
findSecondFileName => 1_b.txt

문자열이 저장됨
***********************************************/