使用C#Lambda过滤.csv文件的目录 [英] Filter a directory for .csv files using c# lambda
本文介绍了使用C#Lambda过滤.csv文件的目录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
通过添加其他条件来帮助我改善下面的lambda
Help me improve the lambda below with adding another conditon like
获取没有匹配的.wav文件的所有.csv.例如,说"sample.csv"和"sample.wav",那么我不想收集"sample.csv".
Get me all .csv with no matching .wav file. Example, say "sample.csv" and "sample.wav", then I dont want to collect "sample.csv".
Files = new DirectoryInfo(txtStartPath.Text)
.EnumerateFiles("*.csv")
.Where(file => file.CreationTime < DateTime.Now.AddDays(-ageOfFile))
.ToList();
推荐答案
您必须首先获取wav
个文件的列表:
You have to get list of wav
files first:
var wavFiles = new DirectoryInfo(txtStartPath.Text)
.EnumerateFiles("*.wav")
.Select(f => Path.GetFileNameWithoutExtension(f))
.ToList();
,然后可以将其用作Where
条件的一部分:
and then you can use it as part of Where
condition:
Files = new DirectoryInfo(txtStartPath.Text)
.EnumerateFiles("*.csv")
.Where(f => f.CreationTime < DateTime.Now.AddDays(-ageOfFile))
.Where(f => !wacFiles.Contains(Path.GetFileNameWithoutExtension(f)))
.ToList();
这篇关于使用C#Lambda过滤.csv文件的目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文