2016-08-29 3 views
3

У меня есть код для удаления папки и всех файлов в ней. Мне нужно удалить только файлы внутри папки, а не папку, в которую папка «1», например, должна остаться). Как это можно сделать с помощью этого кода?Удалить файлы, но не папки C#

public class Deletefolder 
    { 
     public static void Main() 
     { 

      var dir = new DirectoryInfo(@"C:\d\wid\1"); 
      dir.Attributes = dir.Attributes & ~FileAttributes.ReadOnly; 

       dir.Delete(true); 

      } 

     } 
+0

Если вы не собираетесь удалять папку, я бы переименовал ваш класс в «EmptyFolder» или что-то подобное. –

+0

Возможный дубликат [Как удалить все файлы и папки в каталоге?] (Https://stackoverflow.com/questions/1288718/how-to-delete-all-files-and-folders-in-a-directory) –

ответ

4

Вы можете использовать следующий код:

System.IO.DirectoryInfo di = new DirectoryInfo("YourPath"); 

foreach (FileInfo file in di.GetFiles()) 
{ 
    file.Delete(); 
} 

Непосредственно «украден» из этого ответа: https://stackoverflow.com/a/1288747/1661209

Я думаю, что этот вопрос является почти точной копией того.

Смежные вопросы