2013-02-27 5 views
0

Я пытаюсь прочитать все строки из файла в каталог, который имеет заголовок с определенной подстрокой.Как получить имя файла для каталога с определенным заголовком подстроки

Мне нужно все только в одной строке кода, поэтому я пытаюсь использовать LINQ.

File.ReadAllLines(Directory.GetFiles(Path).Select(i=> i.Where(i.Contains("mystring"))); 

Но компилятор ему не нравится - как я могу это достичь?

ответ

0

Попробуйте это: File.ReadAllLines(Directory.GetFiles(Path).First(i => i.Contains("mystring")))

0

Чтобы получить все файлы с некоторой строки в названии использовать этот запрос:

Directory.GetFiles(Path).Where(f => f.Contains("mystring").ToList()) 

Вы можете изменить ToList() с First() получить только первый, а не все.

0

Попробуйте это, он обрабатывает возможные исключения.

string fileContent = string.Empty; 
var fileName = Directory.GetFiles(Path).Where(i => i.Contains("mystring")).FirstOrDefault(); 
if(!string.IsNullOrEmpty(fileName)) 
    fileContent = File.ReadAllLines(fileName); 
Смежные вопросы