Linq 如何获取具有特定子字符串标题的目录的文件名
我试图将文件中的所有行读取到一个目录中,该目录的标题带有特定的子字符串 我只需要一行代码中的所有内容,这就是我尝试使用LINQ的原因Linq 如何获取具有特定子字符串标题的目录的文件名,linq,linq-to-entities,Linq,Linq To Entities,我试图将文件中的所有行读取到一个目录中,该目录的标题带有特定的子字符串 我只需要一行代码中的所有内容,这就是我尝试使用LINQ的原因 File.ReadAllLines(Directory.GetFiles(Path).Select(i=> i.Where(i.Contains("mystring")) ); 但是编译器不喜欢它-我怎样才能做到这一点呢?试试这个:File.ReadAllLines(Directory.GetFiles(Path)。首先(I=>I.Contains(“m
File.ReadAllLines(Directory.GetFiles(Path).Select(i=> i.Where(i.Contains("mystring")) );
但是编译器不喜欢它-我怎样才能做到这一点呢?试试这个:
File.ReadAllLines(Directory.GetFiles(Path)。首先(I=>I.Contains(“mystring”))
要获取标题中有字符串的所有文件,请使用该查询:
Directory.GetFiles(Path).Where(f => f.Contains("mystring").ToList())
您可以使用
First()
更改ToList()
,以仅获取第一个而不是全部。试试看,它可以处理可能的异常
string fileContent = string.Empty;
var fileName = Directory.GetFiles(Path).Where(i => i.Contains("mystring")).FirstOrDefault();
if(!string.IsNullOrEmpty(fileName))
fileContent = File.ReadAllLines(fileName);