Получить первый файл с определенным расширением в папке - PullRequest
0 голосов
/ 09 декабря 2018

Мое приложение WinForms использует файловую систему для сохранения своих данных, я читаю и пишу из файла с уникальным расширением (которое я создал).

Я хочу убедиться, что файл всегда можно найтимоим приложением, даже если оно переименовано или перемещено в подкаталог.

Я видел функцию Directory.GetFiles(…), но он получает все файлы с расширением, что означает, что он собираетсяпродолжать поиск даже после того, как файл найден.

Мой вопрос: есть ли более эффективный способ поиска этого файла?

Заранее спасибо

1 Ответ

0 голосов
/ 09 декабря 2018

Да, есть.Как вы сказали, GetFiles получит все файлы с поисковым фильтром, а затем вернется.Вы не хотите этого, вы хотите EnumerateFiles вместо:

Перечисляемая коллекция полных имен (включая пути) для файлов в каталоге, указанном в path икоторые соответствуют указанному шаблону поиска и опции.

Итак, вы в основном хотите:

var file = Directory.EnumerateFiles(yourCurrentParameters)
    .FirstOrDefault();

Так что LINQ вернется, как только будет найдено первое совпадение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...