// allfile2.cs using System; using System.IO; using System.Collections; public class ShowAllFiles { static void DoIt(string dir) { Queue q = new Queue(); q.Enqueue(dir); while (q.Count > 0) { string d = (string)q.Dequeue(); string[] files = Directory.GetFiles(d); foreach (string s in files) { Console.WriteLine(s); } string[] dirs = Directory.GetDirectories(d); foreach (string s in dirs) { q.Enqueue(s); } } } static void Main(string[] args) { if (args.Length == 0) return; DoIt(args[0]); } } // コンパイル方法:csc allfile2.cs //     実行例:allfile2 c:\