C# удаляют папку и все файлы и папки в той папке

Я пытаюсь удалить папку и все файлы и папки в той папке, я использую код ниже, и я получаю ошибку Folder is not empty, какие-либо предложения на том, что я могу сделать?

try
{
  var dir = new DirectoryInfo(@FolderPath);
  dir.Attributes = dir.Attributes & ~FileAttributes.ReadOnly;
  dir.Delete();
  dataGridView1.Rows.RemoveAt(dataGridView1.SelectedRows[i].Index);
}
catch (IOException ex)
{
  MessageBox.Show(ex.Message);
}
87
задан Scott Weldon 28 December 2016 в 01:23
поделиться

6 ответов

dir.Delete(true); // true => recursive delete
144
ответ дан 24 November 2019 в 07:39
поделиться

Эээ, а как насчет вызова Directory.Delete (path, true); ?

6
ответ дан 24 November 2019 в 07:39
поделиться

Метод Directory.Delete имеет рекурсивный логический параметр, он должен делать то, что вам нужно

4
ответ дан 24 November 2019 в 07:39
поделиться

Читайте руководство:

Метод Directory.Delete (String, Boolean)

Directory.Delete(folderPath, true);
90
ответ дан 24 November 2019 в 07:39
поделиться

Попробуйте:

System.IO.Directory.Delete(path,true)

Это рекурсивно удалит все файлы и папки по «пути», если у вас есть на это разрешения.

22
ответ дан 24 November 2019 в 07:39
поделиться

Вы также должны использовать:

dir.Delete(true);

для рекурсивного удаления содержимого этой папки. См. MSDN DirectoryInfo.Delete () overloads .

3
ответ дан 24 November 2019 в 07:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: