Реализовать удаление файлов по заданным параметрам - C#

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

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

Добрый день. Есть папка с архивами(я сделал программу для архивации нужных файлов по дням), имена которых содержат дату, когда их создали, и расширение (например 04.02.2017.7z), Нужно реализовать так, что бы каждые 15 дней удалялись файлы предыдущих дней в этом месяце (потому что диск заполняется, а нужен способ без траты денег на новые винты) но оставлялись ключевые, вот такие: 01.хх.хххх, 15.хх.хххх, 30.хх.хххх для месяца с 30 днями, 31.хх.хххх для месяца с 31 днями, 28.хх.хххх для февраля В интернете нигде нет толкового, что бы помочь с этим. По-этому, прошу написать код реализации, кому не сложно. Просто текстом советы не нужны. Я не программирую почти, и не смогу сам, но мне очень требуется срочно сейчас реализовать удалением бекапов кроме ключевых. Потому что вручную делать не камильфо. Надеюсь, что найдутся неравнодушные. Благодарю заранее.

Решение задачи: «Реализовать удаление файлов по заданным параметрам»

textual
Листинг программы
foreach (string fullPath in Directory.EnumerateFiles(@"c:\folder", "*.7z"))
{
    string name = Path.GetFileNameWithoutExtension(fullPath);
    DateTime date = DateTime.ParseExact(name, @"d\.M\.yyyy", CultureInfo.InvariantCulture);
    if (date.Day != 1 && date.Day != 15 && date.Day != DateTime.DaysInMonth(date.Year, date.Month))
    {
        File.Delete(fullPath);
    }
}

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


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

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

14   голосов , оценка 3.714 из 5
Похожие ответы