C++遍历文件夹下的所有文件
2015-12-23 09:27
666 查看
void find(string lpPath)
{
string szFind;
string szFile;
WIN32_FIND_DATA
FindFileData;
szFind = lpPath;
szFind = szFind + "\\*.*";
HANDLE
hFind=::FindFirstFile(szFind.c_str(),&FindFileData);
if(INVALID_HANDLE_VALUE == hFind)
return;
while(::FindNextFile(hFind,&FindFileData))
{
if
(strcmp((char*)FindFileData.cFileName, ".") == 0 ||
strcmp((char*)FindFileData.cFileName, "..") == 0)
{
continue;
}
szFile = lpPath;
szFile = szFile + "\\";
szFile = szFile +
FindFileData.cFileName;
cout<<szFile.c_str()<<endl;
if
(FindFileData.dwFileAttributes &
FILE_ATTRIBUTE_DIRECTORY)
{
find(szFile);
}
}
FindClose(hFind);
}
{
string szFind;
string szFile;
WIN32_FIND_DATA
FindFileData;
szFind = lpPath;
szFind = szFind + "\\*.*";
HANDLE
hFind=::FindFirstFile(szFind.c_str(),&FindFileData);
if(INVALID_HANDLE_VALUE == hFind)
return;
while(::FindNextFile(hFind,&FindFileData))
{
if
(strcmp((char*)FindFileData.cFileName, ".") == 0 ||
strcmp((char*)FindFileData.cFileName, "..") == 0)
{
continue;
}
szFile = lpPath;
szFile = szFile + "\\";
szFile = szFile +
FindFileData.cFileName;
cout<<szFile.c_str()<<endl;
if
(FindFileData.dwFileAttributes &
FILE_ATTRIBUTE_DIRECTORY)
{
find(szFile);
}
}
FindClose(hFind);
}
相关文章推荐
- 亲自动手~用VC++做DLL
- 亲自动手~用VC++做DLL
- C++ 使用std::getline()拆分字符串
- C++学习
- C++ 使用ifstream和getline读取文件内容
- 【C++ STL应用与实现】26: 如何使用std::for_each以及基于范围的for循环 (since C++11)
- Effective C++: 流操作.
- Effective C++: member function as a array.
- 魔兽世界终极版(C++程序设计第6周)
- 实战c++中的vector系列--vector应用之STL的find、find_if、find_end、find_first_of、find_if_not(C++11)
- 实战c++中的vector系列--vector应用之STL的find、find_if、find_end、find_first_of、find_if_not(C++11)
- 多态与虚函数编程题 #3(C++程序设计第6周)
- 多态与虚函数编程题 #2(C++程序设计第6周)
- 多态与虚函数编程题 #1(C++程序设计第6周)
- ccf试题201312-2——ISBN号码
- 《C语言及程序设计初步》第十四讲实践项目
- IO
- CC学习C语言 小结No.1
- 一起talk C栗子吧(第八十回:C语言实例--进程互斥)
- C语言:选择排序