-1

C#を使用して、指定されたネストインデックスを持つディレクトリをループするにはどうすればよいですか?

小さな例:

Folder1
|__Folder1.1
|  |__Folder1.1.1
|__Folder1.2

Folder2
|__Folder2.1
   |__Folder2.1.1
   |__Folder2.1.2
      |__Folder2.1.2.1

最大ネストインデックス1を使用すると、次のディレクトリが取得されます:(
ネストレベル0) Folder1、Folder2
(ネストレベル1)  Folder1.1、Folder1.2、Folder2.1

前もって感謝します!

4

1 に答える 1

0

Directory.GetDirectories次の関数を使用して、再帰的なメソッドを記述できます。

class Program
{
    static void Main()
    {
        Loop(@"c:\work", 1);
    }

    static void Loop(string root, int nestingIndex = 0)
    {
        if (nestingIndex < 0)
        {
            return;
        }
        foreach (var folder in Directory.GetDirectories(root))
        {
            Console.WriteLine(folder);
            Loop(folder, nestingIndex - 1);
        }
    }
}
于 2012-04-07T19:06:01.787 に答える