//참조 블러그
//http://blog.naver.com/ppusarida/40086376260
#include <windows.h>
#include <direct.h>
void FileList(char *path);
void main()
{
char Path[MAX_PATH];
_getcwd(Path, MAX_PATH);
strcat(Path,"\\*.*"); // 만약 wav파일만 찾고 싶다면 *.wav 하면된다 그런데 하위 폴더는 찾기가 안될것이다.
FileList(Path);
}
void FileList(char *path)
{
BOOL bResult = TRUE;
HANDLE hSrch;
WIN32_FIND_DATA wfd;
char drive[_MAX_DRIVE];
char dir[MAX_PATH];
char newpath[MAX_PATH];
// path에 해당하는 디렉토리를 포인터를 읽어온다.
hSrch=FindFirstFile(path,&wfd);
// 잘못읽어올경우 함수를 빠져 나간다.
if (hSrch == INVALID_HANDLE_VALUE)
return;
// 드라이브를 읽어온다. ( 어찌보면 필요없는 부분이다 )
_splitpath(path,drive,dir,NULL,NULL);
while( bResult ) {
if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
if (strcmp(wfd.cFileName,".") && strcmp(wfd.cFileName,".."))
{
FileList(newpath); // 재귀함수 호출로 하위 디렉토리까지 처리할수 있다.
}
}
wfd.cFileName; // 이변수에 파일 이름이 씌여진다.( 여기 변수에 파일명을 얻어오니 원하는 처리를 하면 된다 )
bResult=FindNextFile(hSrch,&wfd);
}
FindClose(hSrch);
}
//http://blog.naver.com/ppusarida/40086376260
#include <windows.h>
#include <direct.h>
void FileList(char *path);
void main()
{
char Path[MAX_PATH];
_getcwd(Path, MAX_PATH);
strcat(Path,"\\*.*"); // 만약 wav파일만 찾고 싶다면 *.wav 하면된다 그런데 하위 폴더는 찾기가 안될것이다.
FileList(Path);
}
void FileList(char *path)
{
BOOL bResult = TRUE;
HANDLE hSrch;
WIN32_FIND_DATA wfd;
char drive[_MAX_DRIVE];
char dir[MAX_PATH];
char newpath[MAX_PATH];
// path에 해당하는 디렉토리를 포인터를 읽어온다.
hSrch=FindFirstFile(path,&wfd);
// 잘못읽어올경우 함수를 빠져 나간다.
if (hSrch == INVALID_HANDLE_VALUE)
return;
// 드라이브를 읽어온다. ( 어찌보면 필요없는 부분이다 )
_splitpath(path,drive,dir,NULL,NULL);
while( bResult ) {
if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
if (strcmp(wfd.cFileName,".") && strcmp(wfd.cFileName,".."))
{
FileList(newpath); // 재귀함수 호출로 하위 디렉토리까지 처리할수 있다.
}
}
wfd.cFileName; // 이변수에 파일 이름이 씌여진다.( 여기 변수에 파일명을 얻어오니 원하는 처리를 하면 된다 )
bResult=FindNextFile(hSrch,&wfd);
}
FindClose(hSrch);
}
'C++' 카테고리의 다른 글
클랙스 동적 할당과 해제 (0) | 2011.11.13 |
---|---|
클래스 (0) | 2011.11.11 |
멤버함수의 상수화 (0) | 2010.06.24 |
클래스와 콘스트 (0) | 2010.06.24 |
const member 초기화 (0) | 2010.06.24 |