Почему поиск файлов не идет во вложенных каталогах? - C#

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

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

Здравствуйте , помогите с написание программы Почему не сканируются все вложенные папки ,если в предыдущей был хотя бы 1 подходящей файл ? Как это исправить ?
using System;
using System.IO;
 
namespace ConsoleApplication1
{
 
    class Program
    {
        static void Main(string[] args)
        {
     
            string a = @"f:";
            DirectoryInfo b = new DirectoryInfo(a);
            try
            {
                DirectoryInfo[] test = b.GetDirectories();
            }
            catch (UnauthorizedAccessException)
            {
       
                Environment.Exit(0);
            }
 
            Find f = new Find();
            f.FindFiles(a, "*.jpg");
     
            Console.ReadKey();
        }
    }

    public class Find
    {
        public void FindInDir(DirectoryInfo dir, string pattern, bool recursive)
        {
            try
            {
                foreach (FileInfo file in dir.GetFiles(pattern))
                {
             
                    Console.Out.WriteLine(file.FullName);
 
                    string F = "D:\\file";
 
                      File.Copy(file.FullName, F + file, true);
 
                }
            }
            catch (UnauthorizedAccessException)
            {
            }
 
            if (recursive)
            {
                DirectoryInfo[] subdir = dir.GetDirectories();
                int i;
                int l = subdir.Length;
                for (i = 1; i < l; i++)
                {
                    try
                    {
                        FindInDir(subdir[i], pattern, recursive);
                    }
                    catch (UnauthorizedAccessException)
                    {
                 
                    }
                }
            }
        }
        public void FindFiles(string dir, string pattern)
        {
            FindInDir(new DirectoryInfo(dir), pattern, true);
        }
 
    }

}

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

textual
Листинг программы
                    string F = "D:\\file";
 
                      File.Copy(file.FullName, F + file, true);

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


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

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

14   голосов , оценка 4.357 из 5