csharp_getfiles

指定されたフォルダ以下のファイル一覧を返す

Directory.GetFilesでは指定したフォルダ内のファイル一覧しか取得できないので、
全てのファイルを取得できる様にした。

       /// <summary>
       /// 指定されたフォルダ以下のファイル一覧を返す
       /// </summary>
       public static List<string> GetSubDirFiles(string strRootPath, string strPattern)
       {
           List<string> files = new List<string>();

           // フォルダ内のファイルを検索
           foreach (string path in Directory.GetFiles(strRootPath, strPattern))
           {
               files.Add(path);
           }
           // ルートディレクトリ内のすべてのサブディレクトリを検索する (再帰)
           foreach (string path in Directory.GetDirectories(strRootPath))
           {
               files.AddRange(GetSubDirFiles(path, strPattern));
           }

           return files;
       }

       static void Main(string[] args)
       {
           string[] fs = GetSubDirFiles(@".\", "*").ToArray();

           // ファイル一覧を出力
           foreach (string fname in fs)
           {
               Console.WriteLine(fname);
           }
       }
最終更新:2009年02月13日 13:43