У меня есть ситуации, когда я должен найти путь к первому файлу с именем my.exe
начиная с startingdirectory
& \mydir\
и углубляются по мере необходимости.
На самом деле, IO.Directory.GetFiles
подходит, но мне нужно его остановить поиск после того, как первый файл будет найден как можно с FindFirstFile
от WinAPI.FindFirstFile с IO.Directory.GetFiles
VB.NET
Dim findedDirectories() As String = IO.Directory.GetFiles(_
startingdirectory & "\mydir\", "my.exe", IO.SearchOption.AllDirectories)
C#
string[] findedDirectories = IO.Directory.GetFiles(_
startingdirectory + "\\mydir\\", "my.exe", IO.SearchOption.AllDirectories);
Можно ли остановить поиск после того, как первый файл найден таким образом, что результат функции будет string
или empty string
, а не string array
? Или здесь лучший способ поиска первого файла в подкаталогах?
возможно дубликат [Как использовать DirectoryInfo.GetFiles и он остановится после нахождения первого матча] (http://stackoverflow.com/questions/9120737/how-to-use-directoryinfo-getfiles-and-have-it-stop-after-find-the-first-match) –
@AlexFilipovici На самом деле это не обман, так как здесь мы ищем один файл в каталоге. Достаточно простого вызова 'File.Exists'. –
@DavidHeffernan: _... и углубится по мере необходимости ..._ –