Удаление папки, если она не существует - C#

Узнай цену своей работы

Формулировка задачи:

Если в коде есть к примеру
Листинг программы
  1. Directory.Delete(@installedPath + @"\\Data\\dialogueviews", true);
и не дай бог эта папка не существует то приосходит ошибка. Конечно можно сделать так
Листинг программы
  1. if (Directory.Exists(installedPath + @"\\Data\\dialogueviews"))
  2. {
  3. Directory.Delete(@installedPath + @"\\Data\\dialogueviews", true);
  4. }
только если таких папок много.Я просто не вижу смысл из-за этого раздувать код, вместо одной строки получается втрое больше. Можно как-то задать, чтоб просто не было ошибки? И тоже самое с файлами кстати если файла нет а папка есть то тоже ошибка
Листинг программы
  1. File.Delete(@installedPath + @"\\Data\\sound\\voice\\processing\\fonixdata.cdf");
странно почему вообще она происходит, на мой взгляд это глупость какаято.
про файл наоборот: если его и путя до него нет то ошибка.

Решение задачи: «Удаление папки, если она не существует»

textual
Листинг программы
  1. public static bool TryDeleteAnything(string path)
  2. {
  3.     try
  4.     {
  5.         var fi = new FileInfo(path);
  6.         if (fi.Exists)
  7.         {
  8.             fi.Delete();
  9.         }
  10.         else
  11.         {
  12.             var di = new DirectoryInfo(path);
  13.             if (di.Exists)
  14.                 di.Delete(true);
  15.         }
  16.         return true;
  17.     }
  18.     catch (IOException exception)
  19.     {
  20.         if (exception.Message.IndexOf("process", StringComparison.OrdinalIgnoreCase) > 0)
  21.             return false;
  22.         throw;
  23.     }
  24. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы