Ввести путь к каталогу и вывести в текстовый файл "дерево" - C#
Формулировка задачи:
Подскажите как решить следующую задачу.
Напишите программу которая просит пользователя ввести путь к каталогу и выводит в текстовый файл имена всех каталогов включая вложенные в виде «дерева».
что делать дальше. Реализовать программу нужно двумя способами с помощью рекурсии и Directory.GetDirectories()
static void Main(string[] args)
{
Console.Write("Введите путь к файлу: ");
string FileName = Console.ReadLine();
// Открываем поток для чтения файла
StreamReader sr = new StreamReader(FileName, Encoding.Default);Решение задачи: «Ввести путь к каталогу и вывести в текстовый файл "дерево"»
textual
Листинг программы
using System;
using System.IO;
using System.Text;
namespace ConsoleApplication158
{
class Program
{
static void Main(string[] args)
{
Console.Write("Введите путь: ");
string dirPath = Console.ReadLine();
var res = new StringBuilder();
BuildDirTree(res, dirPath);
File.WriteAllText(@"c:\temp.txt", res.ToString());
}
private static void BuildDirTree(StringBuilder res, string dirPath, int level = 0)
{
res.AppendLine(new string(' ', level) + Path.GetFileName(dirPath));
foreach (var subDir in Directory.GetDirectories(dirPath))
BuildDirTree(res, subDir, level + 1);
}
}
}