Develop
2013.04.23 16:13
[c++] 디렉토리 내의 파일 찾기 FindFirstFile() 함수
조회 수 20667 댓글 6
특정 디렉토리 아래에 있는 모든 파일과 디렉토리 혹은 특정 조건의 파일과 디렉토리를 얻고자 한다면, 다음 API 함수를 이용한다.
HANDLE FindFirstFile(LPCSTR lpFileName, LPWIN32_FIND_DATA finddata);
BOOL FindNextFile(HANDLE hFind, LPWIN32_FIND_DATA finddata);
BOOL FindClose(HANDLE hFind);
FindFirstFile : 파일 검색을 시작한다.
파일 검색 문자열이 잘못되었거나 다른 이유로 함수 실행이 실패했을 경우 INVALID_HANDLE_VALUE로 Define된 상수값을 반환한다. 성공했을 경우 파일 검색 핸들을 반환하고 두 번째로 전달되는 구조체에 첫 번째로 발견되는 파일의 정보를 넣어준다.
LPCSTR lpFileName
파일 검색 문자열을 넘겨준다.
예) "c:*.*" 혹은 "c:*.txt"
LPWIN32_FIND_DATA finddata
파일 검색 데이터 구조체의 포인터를 넘겨준다.
FindNextFile : 다음 파일의 정보를 얻는다.
함수 실행이 성공하였을 경우 TRUE를, 실패하였을 경우 FALSE를 반환한다. 함수 성공시 두 번째 인자로 전해지는 구조체에 파일의 정보를 넣어준다.
HANDLE hFind
FindFirstFile이 반환한 파일 검색 핸들을 넘겨준다.
LPWIN32_FIND_DATA finddata
파일 검색 데이터 구조체의 포인터를 넘겨준다.
FileClose : 파일 핸들을 닫는다.
FindFirstFile에 의해 열린 파일 핸들을 닫는다. 성공하였을 경우 TRUE를, 실패하였을 경우 FALSE를 반환한다.
HANDLE hFind
FindFirstFile이 반환한 파일 검색 핸들을 넘겨준다.
사용 예
#include <windows.h> #include <stdio.h> #include <string.h> int main() { WIN32_FIND_DATA FindData; HANDLE hFind; char path[255]; strcpy(path, "c:windows*"); hFind = FindFirstFile((LPCSTR)path, &FindData); if(hFind==INVALID_HANDLE_VALUE) return 0; do{ printf("%s ", FindData.cFileName); }while(FindNextFile(hFind, &FindData)); FindClose(hFind); return 0; }
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
445 | Develop |
[ios] Locale Identifiers
![]() |
hooni | 2018.11.29 | 1744 |
444 | Develop |
[ios] libxml/tree.h file not found
![]() |
hooni | 2013.08.08 | 18770 |
443 | Develop | [ios] iphone SetDeviceOrientation 화면 강제 회전 | hooni | 2013.11.20 | 18517 |
442 | Develop | [ios] iOS에서 디바이스 종류 알아오기 | hooni | 2014.05.24 | 3764 |
441 | Develop |
[ios] iOS앱의 Xcode 빌드 과정
![]() |
hooni | 2015.01.03 | 2402 |
440 | Develop |
[ios] iOS 의 인앱구매 소개
![]() |
hooni | 2014.04.29 | 3902 |
439 | Develop |
[ios] iOS 앱 아이콘을 만드는 유틸
![]() |
hooni | 2015.01.03 | 950 |
438 | Develop | [ios] iOS 사운드 관련 프레임워크 | hooni | 2014.04.18 | 3084 |
437 | Develop | [ios] iOS In App Purchase 코드 부분 샘플 2 | hooni | 2013.11.20 | 11339 |
436 | Develop | [ios] iOS In App Purchase 코드 부분 샘플 1 | hooni | 2013.11.20 | 11804 |
435 | Develop |
[ios] iOS In App Purchase #2 (코드 구현)
![]() |
hooni | 2013.11.20 | 13812 |
434 | Develop |
[ios] iOS In App Purchase #1 (코드 구현 전 웹 설정 작업)
![]() |
hooni | 2013.11.20 | 14556 |