相关内容 C++如何读取文件夹中文件
http://blog.csdn.net/u012005313/article/details/46490437
C++代码如下 搜索文件夹中全部文件时(*.*)
bool flag=true;
int optional=0;
while (flag) {
string path;
cout<<"输入路径:(xx\\xx\\)";
cin>>path;
char fileName[1024];
strcpy(fileName, path.c_str());
strcat(fileName, "*.bmp");
HANDLE file;
LPCTSTR lpFileName=fileName;
WIN32_FIND_DATA pNextInfo;
file=FindFirstFile(lpFileName, &pNextInfo);
if (file == INVALID_HANDLE_VALUE)
{
cout<<"搜索失败"<<endl;
system("pause");
exit(0);
}
char listpath[1024];
strcpy(listpath, path.c_str());
strcat(listpath, "list.txt");
ofstream fout(listpath);
if (!fout.is_open())
{
cout<<"can not open the file "<<listpath<<endl;
system("pause");
exit(0);
}
while (FindNextFile(file, &pNextInfo))
{
if (pNextInfo.cFileName[0] == '.')
continue;
cout<<"得到文件:"<<pNextInfo.cFileName<<endl;
fout<<pNextInfo.cFileName<<endl;
}
fout.close();
cout<<"继续还是结束:(1 or 0)";
cin>>optional;
if (optional != 1)
flag=false;
}
搜索特定文件时 (*.jpg)
int count=0;//计数器
bool flag=true;
int optional=0;
while (flag) {
string path;
cout<<"输入路径:(xx\\xx\\)";
cin>>path;
char listpath[1024];
strcpy(listpath, path.c_str());
strcat(listpath, "list.txt");
ofstream fout(listpath);
if (!fout.is_open())
{
cout<<"can not open the file "<<listpath<<endl;
system("pause");
exit(0);
}
char fileName[1024];
strcpy(fileName, path.c_str());
strcat(fileName, "*.jpg");
HANDLE file;
LPCTSTR lpFileName=fileName;
WIN32_FIND_DATA pNextInfo;
file=FindFirstFile(lpFileName, &pNextInfo);
if (file == INVALID_HANDLE_VALUE)
{
cout<<"搜索失败"<<endl;
system("pause");
exit(0);
}
cout<<"得到文件:"<<pNextInfo.cFileName<<endl;
fout<<pNextInfo.cFileName<<endl;
count++;
while (FindNextFile(file, &pNextInfo))
{
if (pNextInfo.cFileName[0] == '.')
continue;
cout<<"得到文件:"<<pNextInfo.cFileName<<endl;
fout<<pNextInfo.cFileName<<endl;
count++;
}
cout<<"count == "<<count<<endl;
count = 0;
fout.close();
cout<<"继续还是结束:(1 or 0)";
cin>>optional;
if (optional != 1)
flag=false;
}