查找与模式不匹配的文件
本文关键字:文件 不匹配 模式 查找 | 更新日期: 2023-09-27 18:34:57
要查找所有.txt文件,我们可以使用它:
Directory.GetFiles(@"c:'","*.txt")
有没有办法找到所有与模式不匹配的文件(例如:所有没有扩展名.txt的文件(。
你可以试试 LINQ:
var files = Directory.EnumerateFiles("C:''").Where(x => !x.EndsWith(".txt")).ToList();
没有内置的搜索模式。但是你可以使用 Linq:
var files = Directory.EnumerateFiles(dir)
.Where(fn => !Path.GetExtension(fn).Equals(".txt", StringComparison.OrdinalIgnoreCase))
.ToArray();
请注意,我使用了EnumerateFiles
而不是GetFiles
。后者在开始处理之前将所有文件加载到内存中,EnumerateFiles
可以在返回整个集合之前开始枚举和筛选名称集合。
使用 linq
var files = Directory.GetFiles(dir)
.Where(file=> !file.EndsWith(".txt").ToList();