如何删除所有文件但保持目录结构不变?

时间:2013-04-19 18:31:14

标签: c#

我想删除文件夹中的所有文件,并删除其所有子文件夹和子子文件夹等中的所有文件,但我不想删除文件夹本身。

最简单的方法是什么?

2 个答案:

答案 0 :(得分:7)

foreach (var file in Directory.EnumerateFiles("path", "*", System.IO.SearchOption.AllDirectories))
{
    //TODO consider error handling
    File.Delete(file);
}

答案 1 :(得分:5)

  static void DirSearch(string sDir)
   {
       try
       {
           foreach (string d in Directory.GetDirectories(sDir))
           {
               foreach (string f in Directory.GetFiles(d))
               {
                   //Delete files, but not directories
                   File.Delete(f);
               }
               //Recursively call this method, so that each directory
               //in the structure is wiped
               DirSearch(d);
           }
       }
       catch (System.Exception excpt)
       {
           Console.WriteLine(excpt.Message);
       }
   }