C# Driectory.GetFiles() 的SearchPattern

C#中Directory.GetFiles(string path , string searchPattern, SearchOption searchOption ) 获取路径下的所有文件
参数含义:
  path:要搜索的目录的相对或绝对路径。此字符串不区分大小写。
  searchPattern:要与 path 中的文件名匹配的搜索字符串,可以是文本和通配符的组合字符,但不支持正则表达式。
  searchOption:用于指定搜索操作是应包含所有子目录还是仅包含当前目录的枚举
    SearchOption.TopDirectoryOnly 默认选项,仅包含当前目录
    SearchOption.AllDirectories 包含所有子目录
searchOption:
  通配符 描述:* 零个或多个字符 ,? 正好是一个字符
  通配说明符以外的字符表示它们自己。例如,searchPattern 字符串“t”搜索 path 中所有以字母“t”结尾的名称。searchPattern 字符串“s”搜索 path 中所有以字母“s”开头的名称。特殊*.* 代表所有类型
   searchOption只能匹配一个格式
    例如:(.meta|.xls) 不能满足文件是以 .meta结尾或 .xls结尾的。
代码:

	1.如果要获取指定目录下的所有文件
 	private void GetFiles(string filePath)
  {
    DirectoryInfo di = new DirectoryInfo(filePath);
    FileInfo[] afi = di.GetFiles("*.*");//*.*可以不要
  }
	
	2.获取指定目录下所有 .meta 文件
	private void GetFiles(string filePath)
  {
    DirectoryInfo di = new DirectoryInfo(filePath);
    FileInfo[] afi = di.GetFiles("*.meta");
  }
  
	2.1.获取指定目录下所有 ABList_日期.txt 文件
	private void GetFiles(string filePath)
  {
    DirectoryInfo di = new DirectoryInfo(filePath);
    FileInfo[] afi = di.GetFiles("ABList_*.txt");
  }

	3.获取多种指定类型文件  
  private void GetVideoFiles(string filePath)
  {
    DirectoryInfo di = new DirectoryInfo(filePath);
    FileInfo[] afi = di.GetFiles("*.meta|*.xls|*.text|*.png");
  }
  
  4.另一种获取多种指定类型文件
  private void GetVideoFiles(string filePath)
  {
    DirectoryInfo di = new DirectoryInfo(filePath);
    FileInfo[] afi = di.GetFiles("*.*");
    string fileName;
    IList<string> list = new List<string>();

    for (int i = 0; i < afi.Length; i++)
    {
      fileName = afi[i].Name.ToLower();
      if (fileName.EndsWith(".meta") || fileName.EndsWith(".xls") || fileName.EndsWith(".text") || fileName.EndsWith(".png"))
      {
        list.Add(fileName);
      }
    }
  }
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值