Создание вложенных папок - C#
Формулировка задачи:
Здравствуйте, хотел бы попросить как-нибудь оптимизировать код.
Задача сама: создать 10 папок, в каждой из их по 9 подпапок, далее в каждой по 8 подпапок и т.д. до еденицы
Сама функция:
Это всего до 8 подпапок дошел. В итоге будет слишком громоздко, можно как-нибудь упростить данную задачу?
Пробовал через рекурсию - не очень получается.
Спасибо всем за ответы!
void create(string path, int count) { string f, b, c; for (int i = 1; i <= count; i++) { f = path + "//" + i; Directory.CreateDirectory(f); for (int j = 1; j <= i - 1; j++) { b = f + "//" + j; Directory.CreateDirectory(b); for (int x = 1; x <= j - 1; x++) { c = path + "//" + j; Directory.CreateDirectory(c); } } } }
Решение задачи: «Создание вложенных папок»
textual
Листинг программы
using System.Collections.Generic; using System.IO; class TreeFolders { private static Stack<string> folders; public TreeFolders(string path) { folders = new Stack<string>(); folders.Push(path); } public void CreateTreeFolders(int numberFolders) { if (numberFolders != 0) { string folder = folders.Pop(); for (int i = 1; i <= numberFolders; i++) { string path = folder + "\\" + i; Directory.CreateDirectory(path); folders.Push(path); CreateTreeFolders(numberFolders - 1); } } } } class Base { static void Main() { TreeFolders treeFolders = new TreeFolders(Directory.GetCurrentDirectory()); treeFolders.CreateTreeFolders(10); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д