C#のディレクトリと子ディレクトリにあるすべてのファイルを再帰的に一覧表示するにはどうすればよいですか?
この記事はあなたが必要とするすべてをカバーしています。ファイルを検索して名前を比較する場合を除いて、名前を印刷するだけです。
次のように変更できます。
static void DirSearch(string sDir)
{
try
{
foreach (string d in Directory.GetDirectories(sDir))
{
foreach (string f in Directory.GetFiles(d))
{
Console.WriteLine(f);
}
DirSearch(d);
}
}
catch (System.Exception excpt)
{
Console.WriteLine(excpt.Message);
}
}
barlopによって追加されました
GONealeは、上記は現在のディレクトリ内のファイルをリストしていないことに言及し、ディレクトリを取得する部分の外側にファイルリスト部分を配置することを提案しています。以下はそれをします。また、コメントを解除できるWriteline行も含まれています。これは、再帰のどこにいるかを追跡するのに役立ち、再帰がどのように機能するかを示すのに役立つ呼び出しを表示するのに役立ちます。
DirSearch_ex3("c:\\aaa");
static void DirSearch_ex3(string sDir)
{
//Console.WriteLine("DirSearch..(" + sDir + ")");
try
{
Console.WriteLine(sDir);
foreach (string f in Directory.GetFiles(sDir))
{
Console.WriteLine(f);
}
foreach (string d in Directory.GetDirectories(sDir))
{
DirSearch_ex3(d);
}
}
catch (System.Exception excpt)
{
Console.WriteLine(excpt.Message);
}
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加