Как получить папки в папках и т.д.? - C#

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

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

            // поиск папок на диске
            try
            {
                string dirPath = @"D:\фотки";
                List<string> dirs = new List<string>(Directory.EnumerateDirectories(dirPath));
 
                foreach (var dir in dirs)
                {
                    Console.ForegroundColor = ConsoleColor.Green;
                    // вывод названия папки
                    Console.WriteLine( "{0}", dir.Substring(dir.LastIndexOf("") + 1));
                }
            }
            catch
            {
 
            }
Нужно чтоб выводился еще полный путь к папке.
       // ПРОЦЕДУРА ПОИСКА ФАЙЛОВ
        static void poisk_file(string file)
        {
            try
            {
                System.IO.DirectoryInfo info_file = new System.IO.DirectoryInfo(file);
                System.IO.FileInfo[] file1 = info_file.GetFiles();
 
                foreach (var dir_file in file1)
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine(dir_file.FullName); // имя файла
       
                }
            }
            catch { }
        }
 
        // ПРОЦЕДУРА ПОИСКА  ПАПОК
        static void poisk_papka(string link)
        {
            string papka_link = link;
            //
            
            //
            // поиск папок в папках
            try
            {
                System.IO.DirectoryInfo info_papka = new System.IO.DirectoryInfo(papka_link);
                System.IO.DirectoryInfo[] papka1 = info_papka.GetDirectories();
 
                foreach (var dir_papka in papka1)
                {
                    Console.ForegroundColor = ConsoleColor.Green;
                    Console.WriteLine(dir_papka.FullName); // путь к папки
 
                    poisk_file(dir_papka.FullName);
 
                    //////////////////////

                    poisk: // поиск в папках - папок
 
                    System.IO.DirectoryInfo info_papka1 = new System.IO.DirectoryInfo(dir_papka.FullName);
                       
                        System.IO.DirectoryInfo[] papka2 = info_papka1.GetDirectories();
                    try
                    {
                        foreach (var dir_papka1 in papka2)
                        {
                            Console.ForegroundColor = ConsoleColor.Green;
                            Console.WriteLine(dir_papka1.FullName); // путь к папки
                            poisk_file(dir_papka1.FullName);
                            
                        }
 
                    }
                    
                    catch { }
                    
                    //////////////////////

                }
            }
            catch { }
        }
Чет не могу разобраться

Решение задачи: «Как получить папки в папках и т.д.?»

textual
Листинг программы
           var Directories = new DirectoryInfo(@"Пусть к папке").GetDirectories("*.*", SearchOption.AllDirectories);
            foreach (var Dir in Directories)
                Console.WriteLine(Dir.FullName);

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


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

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

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