hur.cn - 华软网

 热门搜索

求一个VC函数,删除指定文件,简单一点的,要求支持通配符

  作者:未知    来源:网络    更新时间:2010/12/6
比如DeteleFile等
不想用遍历目录的方法,要通配符,请给个例子,谢谢
---华软 网友回答---
不遍历,怎么获得资料路径和名字呢? 最除非你自己指定要删除的资料名字.

这样楼主应该有思绪了吧.
遍历的时候 通配符过虑 ,然后调用这个函数删除.
这里有个资料多通配符过虑遍历的例子,作参照.
http://download.csdn.net/source/2682368
---华软网友回复---
system("del C:\\*.txt");
---华软网友回复---
C++">
void Recurse(LPCTSTR pstr)
{
   CFileFind finder;

   // build a string with wildcards
   CString strWildcard(pstr);
   strWildcard += _T("\\*.*");

   // start working for files
   BOOL bWorking = finder.FindFile(strWildcard);

   while (bWorking)
   {
      bWorking = finder.FindNextFile();

      // skip . and .. files; otherwise, we'd
      // recur infinitely!

      if (finder.IsDots())
         continue;

      // if it's a directory, recursively search it

      if (finder.IsDirectory())
      {
         CString str = finder.GetFilePath();
         TRACE(_T("%s\n"), (LPCTSTR)str);
         Recurse(str);
      }
   }

   finder.Close();
}

void PrintDirs()
{
   Recurse(_T("C:"));
}

---华软网友回复---
引用 1 楼 xiaohuh421 的回复:
不遍历,怎么获得资料路径和名字呢? 最除非你自己指定要删除的资料名字.

这样楼主应该有思绪了吧.
遍历的时候 通配符过虑 ,然后调用这个函数删除.
这里有个资料多通配符过虑遍历的例子,作参照.
http://download.csdn.net/source/2682368


对的,遍历肯定是要的,我意思是不用自己写代码遍历,比如deleteFile参数里能否带通配符,如果能够就简单了
---华软网友回复---
兔子部长已经给出代码了...
---华软网友回复---
谢谢列位,已经用SHFileOperation来实现,接分!
     
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。