У меня есть массив string
, содержащий все имена "Важные файлы", которые я хочу сохранить в папке. Папка содержит txts, такие как «spam.txt» или подобные, а также 1 файл с именем «vital.txt».
Целью будет перемещение всех остальных файлов, кроме важных, в другую папку.
Вот что я бы сделал:
string[] importantFiles = { "vital.txt", "primordial.dll" };
// with currentDir.GetFiles correctly set
foreach (FileInfo fileScanner in currentDir.GetFiles())
{
foreach (string s in importantFiles)
{
// Without the "!", works normally, returns matching files
if (!fileScanner.Name.Equals(s))
{
MessageBox.Show(
"This is SUPPOSED to be a non matching file : " + fileScanner.Name);
}
else // nothing
Проблема, с которой я сталкиваюсь при использовании каждого метода, который я пробовал, заключается в том, чтобы «обратить» процесс сопоставления. Поиск подходящего файла — это нормально, но мне кажется, что отфильтровать плохой файл невозможно.
var filesToMove = currentDir.GetFiles().Select(fi => fi.Name).Except(importantFiles).ToList();
- person vasily.sib   schedule 29.12.2018