Develop
2013.04.23 16:13
[c++] 디렉토리 내의 파일 찾기 FindFirstFile() 함수
Views 20667 Comment 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; }
No. | Category | Subject | Author | Date | Views |
---|---|---|---|---|---|
1017 | Etc |
영어. 외우면 도움되는 필수영어회화 표현
![]() |
hooni | 2013.09.09 | 21487 |
1016 | Develop |
프로그래밍에서 foo, bar 함수의 유래
![]() |
hooni | 2013.06.25 | 21487 |
1015 | Develop |
[c] 재미있는 코딩..
![]() |
hooni | 2003.04.23 | 21420 |
1014 | Etc |
[flash] 자동차 엔진의 원리 (4행정 사이클 그림)
![]() |
hooni | 2013.04.23 | 21288 |
1013 | Develop |
[c] 포인터 학습용 예제 소스 코드
![]() |
hooni | 2013.04.23 | 21088 |
1012 | Develop |
[c] 이진트리/트리 순회법 코드(전위/중위/후위)
5 ![]() |
hooni | 2015.07.02 | 21069 |
1011 | PPT |
[doc] 발표 자료 ㅎㅎtalk4neo
![]() |
hooni | 2013.04.23 | 21032 |
1010 | PPT |
[ppt] 시스템보안 연구실 ppt 템플릿.. (CIST)
![]() |
hooni | 2013.04.23 | 20942 |
1009 | System/OS |
[doc] 코코아 프로그래밍 for MACOS 관련 내 분량..
![]() |
hooni | 2013.04.23 | 20911 |
1008 | Develop | git 브런치 배우기 (링크) | hooni | 2013.07.09 | 20702 |
» | Develop | [c++] 디렉토리 내의 파일 찾기 FindFirstFile() 함수 6 | hooni | 2013.04.23 | 20667 |
1006 | Etc | [web] 제로보드 XE 템플릿에서 if문에 대해서 알아봅시다 | hooni | 2013.08.16 | 20621 |