C#递归遍历指定目录下的所有文件(包括子目录下的文件)

 1 /// <summary>
 2         /// 递归遍历dir目录下的所有文件
 3         /// </summary>
 4         /// <param name="dir">要查找的目录</param>
 5         /// <param name="files">集合对象,用于保存文件信息</param>
 6         /// <returns></returns>
 7         public void GetAllFiles(DirectoryInfo dir, List<FileInfo> files)
 8         {
 9             try
10             {
11                 if (dir.Exists)
12                 {//判断参数目录是否存在
13                     DirectoryInfo[] subdir = dir.GetDirectories();
14                     for (int i = 0; i < subdir.Length; i++)
15                     {
16                        GetAllFiles(subdir[i], files);
17                     }
18                     FileInfo[] curfiles = dir.GetFiles();
19                     for (int j = 0; j < curfiles.Length; j++)
20                     {
21                         files.Add(curfiles[j]);
22                     }
23                 }
24             }
25             catch (Exception e)
26             {
27             }
28         }

 

posted @ 2013-05-15 11:30  loklook123  阅读(438)  评论(0编辑  收藏  举报