C# 递归查找文件夹下所有文件和子文件夹的所有文件

    1. 方法实现
    2. public class DirectoryAllFiles  
    3.    {  
    4.        static List<FileInformation> FileList = new List<FileInformation>();  
    5.        public static List<FileInformation> GetAllFiles(DirectoryInfo dir)  
    6.        {  
    7.            FileInfo[] allFile = dir.GetFiles();  
    8.            foreach (FileInfo fi in allFile)  
    9.            {  
    10.                FileList.Add(new FileInformation{ FileName=fi.Name,FilePath=fi.FullName });  
    11.            }  
    12.            DirectoryInfo[] allDir= dir.GetDirectories();  
    13.            foreach (DirectoryInfo d in allDir)  
    14.            {  
    15.                GetAllFiles(d);  
    16.            }  
    17.            return FileList;  
    18.        }  
    19.    }  
    20.   
    21.    public class FileInformation  
    22.    {  
    23.        public string FileName { get; set; }  
    24.        public string FilePath { get; set; }  
    25.    }  
    26. 方法调用:
    27. List<FileInformation> list = DirectoryAllFiles.GetAllFiles(

new System.IO.DirectoryInfo(@"E:\Test"));  if (list.Where(t => t.FileName.ToLower().Contains("json")).Any()) Console.WriteLine("有信息");  foreach (var item in list)  

    {     
                  Console.WriteLine(

string.Format("文件名:{0}---文件目录{1}",item.FileName,item.FilePath));  

    }  
posted @ 2017-10-25 14:17  dogxuefeng  阅读(1108)  评论(1编辑  收藏  举报