当前位置: 代码迷 >> 综合 >> win32 api遍历目录下所有文件
  详细解决方案

win32 api遍历目录下所有文件

热度:2   发布时间:2023-12-16 11:33:52.0
// TraversalADirectory.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include "windows.h"
#include <string>void find(WCHAR * lpPath)  
{  WCHAR szFind[MAX_PATH];  WCHAR szFile[MAX_PATH];  WIN32_FIND_DATA FindFileData;  lstrcpy(szFind,lpPath);  lstrcat(szFind,L"\\*.h");  HANDLE hFind=::FindFirstFile(szFind,&FindFileData);  if(INVALID_HANDLE_VALUE == hFind)    return;  while(TRUE)  {  if(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)  {  if(FindFileData.cFileName[0]!='.')  //.和.. 当前目录,上一级目录{  lstrcpy(szFile,lpPath);  lstrcat(szFile,L"//");  lstrcat(szFile,FindFileData.cFileName);  find(szFile);  }  }  else  {   std::wstring buffer;buffer.append(szFind);buffer.append(FindFileData.cFileName);OutputDebugString(FindFileData.cFileName);//OutputDebugString(buffer.c_str());}  if(!FindNextFile(hFind,&FindFileData))  break;  }  FindClose(hFind);   
}  int main(int argc, char *argv[])
{find(TEXT("C:\\Users\\qianyuxiang\\Desktop\\com原理与应用"));return 0;
}

  相关解决方案