Почему StreamWriter не все записывает? - C#

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

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

Здравствуйте. Есть код, который "обходит" все файлы и директории и пути к ним записывает в файл Но почему то записывается фиксированное и неполное количество информации Вот код :
DateTime Start = DateTime.Now;
Console.Clear();
int errorCount = 0, count = 0;
using (StreamWriter _Sw = new StreamWriter("Paths.txt", true, Encoding.Default))
{
    DriveInfo[] _DriveInfo = DriveInfo.GetDrives();
    foreach (var _di in _DriveInfo)
    {
        Foo(new DirectoryInfo(_di.Name));
        void Foo(DirectoryInfo dir)
        {
            Console.WriteLine(dir.FullName);
            _Sw.WriteLine(dir.FullName);
            try
            {
                foreach (DirectoryInfo item in dir.GetDirectories())
                {
                    ++count;
                    Foo(item);
                }
                foreach (var file in dir.EnumerateFiles())
                {
                    Console.WriteLine(file.FullName);
                    _Sw.WriteLine(file.FullName);
                    ++count;
                }
            }
            catch (Exception)
            {
                ++errorCount;
                ++count;
            }
        }
    }
 
    DateTime Finish = DateTime.Now;
    Console.WriteLine();
    Console.WriteLine($"отказов в доступе: {errorCount}");
    Console.WriteLine($"Всего директорий и файлов : {count}");
    Console.WriteLine($"Время выполнения : {Finish - Start}");
    Console.ReadKey();
}
Заранее благодарен за помощь

Решение задачи: «Почему StreamWriter не все записывает?»

textual
Листинг программы
using (StreamWriter _Sw = new StreamWriter("Paths.txt", true, Encoding.Default, 1))

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


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

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

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