차근차근/C

파일 검색 소스

예쁜꽃이피었으면 2014. 11. 24. 17:51

http://koronaii.tistory.com/15


====================================================================

파일검색 소스. 검색을 원하는 폴더를 path로 넣으면, 하위폴더까지 전부 검색해서 출력한다.
 
=====================================================================

01void FileList(char *path)
02{
03 HANDLE hSrch;
04 WIN32_FIND_DATA wfd;
05 BOOL bResult   = TRUE;
06 char drive[_MAX_DRIVE] = {0,};
07 char dir[MAX_PATH]  = {0,};
08 char newpath[MAX_PATH] = {0,};
09 printf"\n검색 경로 = %s\n", path );
10 hSrch=FindFirstFile( path, &wfd );
11 if (hSrch == INVALID_HANDLE_VALUE)
12 {
13  return;
14 }
15  
16 _splitpath( path, drive, dir, NULL, NULL );
17 while (bResult)
18 {
19  if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) // 폴더형식이라면.
20  {
21   if strcmp(wfd.cFileName, "." ) && strcmp(wfd.cFileName, ".." ) ) // 이 2개는 제외한다.
22   {
23    sprintf(newpath,"%s%s%s\\*.*",drive,dir,wfd.cFileName);
24    FileList(newpath);
25   }
26  }
27  else // 실제파일이면!
28  {
29   // (nFileSizeHigh * (MAXDWORD+1)) + nFileSizeLow. // 파일의 실제사이즈 계산공식.
30   printf("%s%s%s\n",drive,dir,wfd.cFileName);
31  }
32  bResult=FindNextFile(hSrch,&wfd);
33 }
34 FindClose(hSrch);
35}


반응형