字符串数组内部-"文件";,存储了10个文件路径。例如,我展示了其中的2个,
[0] C:\Users\17\Documents\FS\D\mdN_2903.dat
[1] C:\Users\17\Documents\FS\D\mdNBP_29032.dat
我想使用他们的文件名(在编号和扩展名.dat之前(以及在c#.net 中计数的文件数量来验证
我试着这样使用它,但它没有通过,即使文件存在
if(Array.Exists(files,e => e.Contains("mdN_") && e.Contains("mdNBP_") && e.count()==10)) { // All 10 files are present }
有没有其他方法可以在c#中实现这一点,请解释一下?
如果你的文件数组总是有2个mdN
和mdNBP
,并且最多有10个文件,你可以这样做:
if (files[0].Contains("mdN") && files[1].Contains("mdNBP") && files.Length == 10)
{
Console.WriteLine("all good");
}
你也可以使用linq作为例子,它可以用不同的方式来完成,这里的顺序无关紧要,它只是检查你的文件是否符合上面提到的值:
if (files.Any(e => e.Contains("mdN") && e.Contains("mdNBP") && files.Length == 10))
{
Console.WriteLine("all good");
}
如果您有更多的文件,那么您可以对文件数组进行for循环,并对照它应该包含的内容列表进行检查。