C/C++/MFC
#include <stdio.h>
#include <windows.h>
void FindFileExist(char *);
void main(void)
{
char path[MAX_PATH];
GetCurrentDirectory(MAX_PATH, path); <-- 다른 의도는 없습니다. 그냥.. 현재 디렉토리를 얻기 위해서 사용 했습니다. 만약... 현재 디렉토리가 아니라 특정 디렉토리를 원하신사면... 그 디렉토리를 적어 주면 되겠죠? ^^a
strcat(path, \"\\\\*.*\");
FindFileExist(path);
}
void FindFileExist(char *path)
{
HANDLE hSrch;
WIN32_FIND_DATA wfd;
char fname[MAX_PATH];
short int bFlag = 1;
char drive[_MAX_DRIVE];
char dir[MAX_PATH];
char newpath[MAX_PATH];
hSrch = FindFirstFile(path, &wfd);
while( bFlag ) {
_splitpath(path, drive, dir, NULL, NULL);
if( wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
if( wfd.cFileName[0] != \'.\' ) {
wsprintf(newpath, \"%s%s%s\\\\*.*\", drive, dir, wfd.cFileName);
FindFileExist(newpath); <-- 재귀호출을 하면 하위 디렉토리 파일까지 모두 검색 할 수 있습니다.
}
} else {
wsprintf(fname, \"%s%s%s\", drive, dir, wfd.cFileName);
printf(\"%s\\n\", fname);
}
bFlag = FindNextFile(hSrch, &wfd);
}
FindClose(hSrch);
}
#include <windows.h>
void FindFileExist(char *);
void main(void)
{
char path[MAX_PATH];
GetCurrentDirectory(MAX_PATH, path); <-- 다른 의도는 없습니다. 그냥.. 현재 디렉토리를 얻기 위해서 사용 했습니다. 만약... 현재 디렉토리가 아니라 특정 디렉토리를 원하신사면... 그 디렉토리를 적어 주면 되겠죠? ^^a
strcat(path, \"\\\\*.*\");
FindFileExist(path);
}
void FindFileExist(char *path)
{
HANDLE hSrch;
WIN32_FIND_DATA wfd;
char fname[MAX_PATH];
short int bFlag = 1;
char drive[_MAX_DRIVE];
char dir[MAX_PATH];
char newpath[MAX_PATH];
hSrch = FindFirstFile(path, &wfd);
while( bFlag ) {
_splitpath(path, drive, dir, NULL, NULL);
if( wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
if( wfd.cFileName[0] != \'.\' ) {
wsprintf(newpath, \"%s%s%s\\\\*.*\", drive, dir, wfd.cFileName);
FindFileExist(newpath); <-- 재귀호출을 하면 하위 디렉토리 파일까지 모두 검색 할 수 있습니다.
}
} else {
wsprintf(fname, \"%s%s%s\", drive, dir, wfd.cFileName);
printf(\"%s\\n\", fname);
}
bFlag = FindNextFile(hSrch, &wfd);
}
FindClose(hSrch);
}