Сравнение файлов папке и в документе

93
10 августа 2019, 10:20

Есть такая проблема. Имеется файл .dat со списком файлов которые должны находится в папке. И сама папка с файлами. Как написать программу которая будет проверять если файл не записан в .dat документе и удалять его?

Answer 1

Ну предположим у нас есть некий files.dat, внутри которого всего две строки:

File.txt
Image.png
  • Первым делом нам надо его считать:

    var list = File.ReadAllLines("files.dat");
    

Это выдаст нам массив строк (string[]), где каждый объект будет = 1 строке из файла.

  • Теперь удаляем из директории все, что не содержится в этом массиве:

    foreach (var file in Directory.GetFiles("Dir"))
    {
        var info = new FileInfo(file);
        if (!list.Contains(info.Name))
            File.Delete(file);
    }
    

FileInfo здесь для того, что бы отделить путь и получить чисто название с расширением, способов это сделать уйма, я просто ленив.. Но вообще по хорошему лучше сверять не просто файл, а полный путь!

Я создал тестовые файлы для примера, до запуска в папке находится следующее:

После запуска имеем следующее:

Как видим, все лишнее успешно удалилось.

READ ALSO
Получить имя исполняемого приложения [закрыт]

Получить имя исполняемого приложения [закрыт]

Пишу небольшое приложение которое работает с названием файла, но возникла сложность я не могу найти название исполняемого файла, многое...

104
SQL integration services выполнение сценария C#

SQL integration services выполнение сценария C#

Пытаюсь освоить SSISВ проекте Integration services добавить сценарий на C#, который принимает на вход строку,и выдает результат

95
Visual Studio , C# , .Net установщик EXE

Visual Studio , C# , .Net установщик EXE

Возник вопрос, мы 4 года уже изучаем на парах C# , пишем небольшие программки, используем разные фреймворки и тд, но дело до доработки проектов...

102