zoukankan      html  css  js  c++  java
  • C# 获得目录下所有文件或指定文件类型文件(包含所有子文件夹)

     1   public partial class FileGet
     2     {
     3         /// <summary>
     4         /// 私有变量
     5         /// </summary>
     6         private static List<FileInfo> lst = new List<FileInfo>();
     7         /// <summary>
     8         /// 获得目录下所有文件或指定文件类型文件(包含所有子文件夹)
     9         /// </summary>
    10         /// <param name="path">文件夹路径</param>
    11         /// <param name="extName">扩展名可以多个 例如 .mp3.wma.rm</param>
    12         /// <returns>List<FileInfo></returns>
    13         public static List<FileInfo> getFile(string path, string extName)
    14         {
    15             getdir(path, extName);
    16             return lst;
    17         }
    18         /// <summary>
    19         /// 私有方法,递归获取指定类型文件,包含子文件夹
    20         /// </summary>
    21         /// <param name="path"></param>
    22         /// <param name="extName"></param>
    23         private static void getdir(string path, string extName)
    24         {
    25             try
    26             {
    27                 string[] dir = Directory.GetDirectories(path); //文件夹列表   
    28                 DirectoryInfo fdir = new DirectoryInfo(path);
    29                 FileInfo[] file = fdir.GetFiles();
    30                 //FileInfo[] file = Directory.GetFiles(path); //文件列表   
    31                 if (file.Length != 0 || dir.Length != 0) //当前目录文件或文件夹不为空                   
    32                 {
    33                     foreach (FileInfo f in file) //显示当前目录所有文件   
    34                     {
    35                         if (extName.ToLower().IndexOf(f.Extension.ToLower()) >= 0)
    36                         {
    37                             lst.Add(f);
    38                         }
    39                     }
    40                     foreach (string d in dir)
    41                     {
    42                         getdir(d, extName);//递归   
    43                     }
    44                 }
    45             }
    46             catch (Exception ex)
    47             {
    48                 LogHelper.WriteLog(ex);
    49                 throw ex;
    50             }
    51         }
    52     }
    53 
    54 
    55     public partial class FileGet1
    56     {
    57         /// <summary>
    58         /// 获得目录下所有文件或指定文件类型文件(包含所有子文件夹)
    59         /// </summary>
    60         /// <param name="path">文件夹路径</param>
    61         /// <param name="extName">扩展名可以多个 例如 .mp3.wma.rm</param>
    62         /// <returns>List<FileInfo></returns>
    63         public static List<FileInfo> getFile(string path, string extName)
    64         {
    65             try
    66             {
    67                 List<FileInfo> lst = new List<FileInfo>();
    68                 string[] dir = Directory.GetDirectories(path); //文件夹列表   
    69                 DirectoryInfo fdir = new DirectoryInfo(path);
    70                 FileInfo[] file = fdir.GetFiles();
    71                 //FileInfo[] file = Directory.GetFiles(path); //文件列表   
    72                 if (file.Length != 0 || dir.Length != 0) //当前目录文件或文件夹不为空                   
    73                 {
    74                     foreach (FileInfo f in file) //显示当前目录所有文件   
    75                     {
    76                         if (extName.ToLower().IndexOf(f.Extension.ToLower()) >= 0)
    77                         {
    78                             lst.Add(f);
    79                         }
    80                     }
    81                     foreach (string d in dir)
    82                     {
    83                         getFile(d, extName);//递归   
    84                     }
    85                 }
    86                 return lst;
    87             }
    88             catch (Exception ex)
    89             {
    90                 LogHelper.WriteLog(ex);
    91                 throw ex;
    92             }
    93         }
    94 
    95     }
  • 相关阅读:
    [SUCTF 2019]Pythonginx
    Buuctf-RSA1
    [网鼎杯 2020 朱雀组]phpweb
    [BJDCTF2020]ZJCTF,不过如此
    CTFHub-信息泄露
    vaex读取和处理大型文件的方法
    "生猪数据统计分析系统"----帮助文档
    法治理论1
    很短暂,很喜欢,很遗憾
    「CF1513E Cost Equilibrium」
  • 原文地址:https://www.cnblogs.com/fuqiang88/p/7866458.html
Copyright © 2011-2022 走看看