Поиск файлов в папке с условием и вывод путей в ListBox - C#

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

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

В папке есть несколько подпапок. Программа перебирает все папки на предмет наличия необходимых файлов и выводит путь до них в ListBox. Это то что я смог сделать:
 private void search_Click(object sender, EventArgs e)
        {
            // Выбор нужной директории
            string path = null;
            using (var dialog = new FolderBrowserDialog())
                if (dialog.ShowDialog() == DialogResult.OK)
                    path = dialog.SelectedPath;
            string mydirectory = path;
            // Определение параметров для поиска
            string[] ext = new string[] { "Па.xml","Па.pdf", "От.docx","От.pdf","При.zip","Е.pdf","ПУ.pdf","Тит.jpg"};
            foreach (string found in ext)
            {
                string[] allFoundFiles = Directory.GetFiles(mydirectory, found, SearchOption.AllDirectories);
            // Вывод результатов в список
            foreach (string file in allFoundFiles)
            {
                listView1.Items.Add(file);
            }
            }
        }
Наверное коряво написано..вы уж извините, только учусь. Суть вопроса: чтобы программа проверяла подпапку, если там есть 8 заранее заданных в поиске файлов, то она пропускала папку и шла дальше, если какого то из заданных файлов не хватает выводила его в ListBox. Надеюсь все максимально четко расписал. P.S. Еще небольшой вопросик, как сделать чтобы путь в ListBox выводился не полностью (С:\a\d\f\g\h), а к примеру (g\h) очень бы упростило жизнь! Заранее спасибо за помощь!

Решение задачи: «Поиск файлов в папке с условием и вывод путей в ListBox»

textual
Листинг программы
String line = @"C:\Magic\World\Hello\Path";
string[] array = line.Split(new[] { '\\' }, StringSplitOptions.RemoveEmptyEntries);
string result = array[array.Length - 2] + "\\" + array[array.Length - 1];
//result = Hello\Path

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


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

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

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