c++ 遍历目录查找文件
2010-01-27 13:42
417 查看
///////////////////////////////////////////////////////////
// Get current dir of exe
char szModuleFileName[MAX_PATH];
//得到exe所在的路径包括exe文件
::GetModuleFileName(NULL, szModuleFileName, MAX_PATH);
char szDrive[256], szDir[MAX_PATH];
//szDrive exe所在盘符,szDir exe所在目录
_splitpath(szModuleFileName, szDrive, szDir, NULL, NULL);
/* format dir for working dir */
char szTempPath[MAX_PATH];
//得到所要查找文件的目录 szDir exe所在目录 "局站停电及发电统计" exe所在目录的子目录
sprintf(szTempPath, "%s%s", szDir, "局站停电及发电统计");
char szSearching[MAX_PATH];
/**********************************************************/
/* 为了保存一个变量 */
_makepath(szSearching, szDrive, szTempPath, NULL, NULL);
CString m_csPluginDir;
m_csPluginDir.Format("%s", szSearching);
//查找的条件是*.xls文件
_makepath(szSearching, szDrive, szTempPath, "*", "xls");
/*
** Search all .dll files, test and load them.
**/
CString csFileName;
WIN32_FIND_DATA wfd;
HANDLE hFindFile = ::FindFirstFile(szSearching, &wfd);
if (hFindFile == INVALID_HANDLE_VALUE) return; // Not any *.dll files
csFileName.Format("%s", wfd.cFileName);
while(! csFileName.IsEmpty())
{
/* find next file */
if (! ::FindNextFile(hFindFile, &wfd) /* &&
GetLastError() == ERROR_NO_MORE_FILES*/)
{
ASSERT(GetLastError() == ERROR_NO_MORE_FILES);
break;
}
else csFileName.Format("%s", wfd.cFileName);
}
::FindClose(hFindFile);
// Get current dir of exe
char szModuleFileName[MAX_PATH];
//得到exe所在的路径包括exe文件
::GetModuleFileName(NULL, szModuleFileName, MAX_PATH);
char szDrive[256], szDir[MAX_PATH];
//szDrive exe所在盘符,szDir exe所在目录
_splitpath(szModuleFileName, szDrive, szDir, NULL, NULL);
/* format dir for working dir */
char szTempPath[MAX_PATH];
//得到所要查找文件的目录 szDir exe所在目录 "局站停电及发电统计" exe所在目录的子目录
sprintf(szTempPath, "%s%s", szDir, "局站停电及发电统计");
char szSearching[MAX_PATH];
/**********************************************************/
/* 为了保存一个变量 */
_makepath(szSearching, szDrive, szTempPath, NULL, NULL);
CString m_csPluginDir;
m_csPluginDir.Format("%s", szSearching);
//查找的条件是*.xls文件
_makepath(szSearching, szDrive, szTempPath, "*", "xls");
/*
** Search all .dll files, test and load them.
**/
CString csFileName;
WIN32_FIND_DATA wfd;
HANDLE hFindFile = ::FindFirstFile(szSearching, &wfd);
if (hFindFile == INVALID_HANDLE_VALUE) return; // Not any *.dll files
csFileName.Format("%s", wfd.cFileName);
while(! csFileName.IsEmpty())
{
/* find next file */
if (! ::FindNextFile(hFindFile, &wfd) /* &&
GetLastError() == ERROR_NO_MORE_FILES*/)
{
ASSERT(GetLastError() == ERROR_NO_MORE_FILES);
break;
}
else csFileName.Format("%s", wfd.cFileName);
}
::FindClose(hFindFile);
相关文章推荐
- 一段PHP SPL标准库的用法(遍历目录,查找固定条件的文件
- C++ 遍历目录下文件
- 遍历目录,查找文件并复制到另一目录
- PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
- C++查找找目录下的文件
- paip.c++ qt 目录遍历以及文件操作
- 多进程遍历目录并查找文件
- 解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
- VB 中遍历目录,遍历目录查找文件的2个实现方法(挺好)
- C/C++ 遍历目录文件,默认目录下
- 如何遍历整个目录树查找文件
- windows C++ 遍历目录,获取文件名和文件路径
- C++实现Linux下遍历指定目录下的文件
- c++遍历查找文件夹路径下的所有文件(比如.txt) 使用的是MFC的CFileFind类
- x64下vs2013 C++遍历目录下所有文件使用_findnext()调试时中断
- 遍历目录文件并查找文件中的内容
- 用命令行操作遍历目录,查找文件的PHP代码
- C++遍历文件夹及判断某一文件或目录是否存在
- 遍历整个目录树查找文件
- Linux下 C++遍历目录下所有文件