用FindFirstFile和FindNestFile编写一个遍历文件夹下所有文件的代码怎么写,求大神指导,万分感谢(C++)

 我来答
拥云庄主
2013-09-18 · TA获得超过2501个赞
知道小有建树答主
回答量:672
采纳率:100%
帮助的人:416万
展开全部

递归遍历一下就行了,代码:

int ShowDir(string strDir)
{
 struct _finddata_t c_file;
    long hFile;
 if((hFile = _findfirst( strDir.c_str(), &c_file )) == -1L )
 {   
  return -1;
 }
 while( _findnext( hFile, &c_file ) == 0 )
 {
  if (strcmp(".", c_file.name) == 0 || strcmp("..", c_file.name) == 0)
  {
   continue;
  }
  
  if (c_file.attrib & _A_SUBDIR)
  {
   //如果是子文件夹,递归调用 
  string strSubDir = strDir.substr(0, strDir.length() - 3) + c_file.name + "\\*.*";
   ShowDir(strSubDir);
  }
  else
  {
   printf("Name:%-20s  LastWrite:%s", c_file.name, ctime(&(c_file.time_write)));
  }  
 }
 _findclose( hFile );
 return 0;
}

其它的头文件和调用的还和之前回答你的那个问题一样,你把打印的格式什么的自己改下就行了,比如把路径或者文件夹名称打出来都可以。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式