标题:关于CFileFind归递问题。
只看楼主
xg911335
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-5-28
结帖率:50%
 问题点数:0 回复次数:0 
关于CFileFind归递问题。
BOOL bFailIfExists=TRUE;
 CFileFind finder;
 CString strSrcPath = _T("E:\\temp");
 if (strSrcPath.GetAt(strSrcPath.GetLength()-1) != '\\' )
  strSrcPath += '\\';
 BOOL bWorking = finder.FindFile(strSrcPath+_T("*"),0);
 while(bWorking)
 {
  bWorking = finder.FindNextFile();
  if ( finder.IsDots())
    continue;
  CString strSubSrcPath = finder.GetFilePath();
  CString s = strSubSrcPath;
  s.Replace(_T("E"),_T("D"));
  //MessageBox(s);
  if(FALSE == PathIsDirectory(_T("D:\\temp")))
   CreateDirectory(_T("D:\\temp"),NULL);

  if(finder.IsDirectory())
  {
   //CreateDirectory(s,NULL);

此处如何归递下层目录???我运行了只能找到一层目录。下面的目录就归递不了了?
  }
  else
  {
   CopyFile(strSubSrcPath,s,bFailIfExists);

  }
 }
 finder.Close();
}
只能循环一层。如E:\temp\123\234\345 E:\temp\asd\sdf这样的结构。运行结果是:D:\temp\123 D:\temp\asd,在下一层的目录就不创建和复制了。
搜索更多相关主题的帖子: CFileFind 
2010-05-28 14:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-308497-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.184512 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved