Поделиться через


Directory.EnumerateFileSystemEntries Метод

Определение

Возвращает перечисляемую коллекцию записей файловой системы, соответствующих указанным критериям.

Перегрузки

EnumerateFileSystemEntries(String)

Возвращает перечисляемую коллекцию имен файлов и имен каталогов по указанному пути.

EnumerateFileSystemEntries(String, String)

Возвращает перечисляемую коллекцию имен файлов и имен каталогов по указанному пути, соответствующих шаблону поиска.

EnumerateFileSystemEntries(String, String, EnumerationOptions)

Возвращает перечисляемую коллекцию имен файлов и имен каталогов по указанному пути, соответствующих шаблону поиска и параметрам перечисления.

EnumerateFileSystemEntries(String, String, SearchOption)

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

EnumerateFileSystemEntries(String)

Исходный код:
Directory.cs
Исходный код:
Directory.cs
Исходный код:
Directory.cs

Возвращает перечисляемую коллекцию имен файлов и имен каталогов по указанному пути.

public:
 static System::Collections::Generic::IEnumerable<System::String ^> ^ EnumerateFileSystemEntries(System::String ^ path);
public static System.Collections.Generic.IEnumerable<string> EnumerateFileSystemEntries (string path);
static member EnumerateFileSystemEntries : string -> seq<string>
Public Shared Function EnumerateFileSystemEntries (path As String) As IEnumerable(Of String)

Параметры

path
String

Относительный или абсолютный путь к каталогу для поиска. В этой строке не учитывается регистр знаков.

Возвращаемое значение

Перечисляемая коллекция записей файловой системы в каталоге, заданном параметром path.

Исключения

.NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или недопустимые символы. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

path имеет значение null.

Недопустимый path: например, он ссылается на несопоставленный диск.

path — это имя файла.

Указанный путь, имя файла или их комбинация превышает максимальную длину, заданную в системе.

У вызывающего объекта отсутствует необходимое разрешение.

У вызывающего объекта отсутствует необходимое разрешение.

Комментарии

Сведения об относительном пути можно указать с path помощью параметра . Относительные сведения о пути интерпретируются как относительные относительно текущего рабочего каталога, который можно определить с помощью GetCurrentDirectory метода .

Методы EnumerateFileSystemEntries и GetFileSystemEntries отличаются следующим образом: при использовании EnumerateFileSystemEntriesможно начать перечисление коллекции записей до возврата всей коллекции. При использовании GetFileSystemEntriesнеобходимо дождаться возврата всего массива записей, прежде чем получить доступ к массиву. Таким образом, при работе с большим количеством файлов и каталогов EnumerateFileSystemEntries может быть более эффективным.

Возвращаемая коллекция не кэшируется; при каждом вызове GetEnumerator в коллекции запускается новое перечисление.

Применяется к

EnumerateFileSystemEntries(String, String)

Исходный код:
Directory.cs
Исходный код:
Directory.cs
Исходный код:
Directory.cs

Возвращает перечисляемую коллекцию имен файлов и имен каталогов по указанному пути, соответствующих шаблону поиска.

public:
 static System::Collections::Generic::IEnumerable<System::String ^> ^ EnumerateFileSystemEntries(System::String ^ path, System::String ^ searchPattern);
public static System.Collections.Generic.IEnumerable<string> EnumerateFileSystemEntries (string path, string searchPattern);
static member EnumerateFileSystemEntries : string * string -> seq<string>
Public Shared Function EnumerateFileSystemEntries (path As String, searchPattern As String) As IEnumerable(Of String)

Параметры

path
String

Относительный или абсолютный путь к каталогу для поиска. В этой строке не учитывается регистр знаков.

searchPattern
String

Строка поиска, которая будет сравниваться с именами в записях файловой системы, расположенными по пути path. Этот параметр может содержать сочетание допустимого литерального пути и подстановочного символа (* и ?), но не поддерживает регулярные выражения.

Возвращаемое значение

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

Исключения

.NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или недопустимые символы. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

-или-

searchPattern не содержит допустимый шаблон.

path имеет значение null.

-или-

searchPattern имеет значение null.

Недопустимый path: например, он ссылается на несопоставленный диск.

path — это имя файла.

Указанный путь, имя файла или их комбинация превышает максимальную длину, заданную в системе.

У вызывающего объекта отсутствует необходимое разрешение.

У вызывающего объекта отсутствует необходимое разрешение.

Комментарии

searchPattern Может быть сочетанием литеральных и подстановочных знаков, но не поддерживает регулярные выражения. Следующие описатели с подстановочными знаками разрешены в searchPattern.

Описатель с подстановочным знаком Соответствует
* (звездочка) Ноль или более символов в этой позиции.
? (вопросительный знак) Ровно один символ в этой позиции.

Символы, отличные от подстановочного знака, являются литеральными символами. Например, searchPattern строка "*t" ищет все имена, path оканчивающиеся буквой "t". Строка searchPattern "s*" ищет все имена, path начинающиеся с буквы "s".

Примечание

При использовании подстановочного знака звездочки в searchPattern таком объекте, как "*.txt", количество символов в указанном расширении влияет на поиск следующим образом:

  • Если указанное расширение имеет ровно три символа, метод возвращает файлы с расширениями, начинающимися с указанного расширения. Например, "*.xls" возвращает как "book.xls", так и "book.xlsx".
  • Во всех остальных случаях метод возвращает файлы, которые точно соответствуют указанному расширению. Например, "*.ai" возвращает "file.ai", но не "file.aif".

При использовании подстановочного знака вопросительного знака этот метод возвращает только файлы, соответствующие указанному расширению. Например, при использовании двух файлов, "file1.txt" и "file1.txtother", шаблон поиска "file?.txt" возвращает только первый файл, а шаблон поиска "file*.txt" возвращает оба файла.

searchPattern не может заканчиваться двумя точками ("..") или содержать две точки (".."), за которыми следует DirectorySeparatorChar или AltDirectorySeparatorChar, и не может содержать недопустимые символы. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars.

Сведения об относительном пути можно указать с path помощью параметра . Относительные сведения о пути интерпретируются как относительные относительно текущего рабочего каталога, который можно определить с помощью GetCurrentDirectory метода .

Методы EnumerateFileSystemEntries и GetFileSystemEntries отличаются следующим образом: при использовании EnumerateFileSystemEntriesможно начать перечисление коллекции записей до возврата всей коллекции. При использовании GetFileSystemEntriesнеобходимо дождаться возврата всего массива записей, прежде чем получить доступ к массиву. Таким образом, при работе с большим количеством файлов и каталогов EnumerateFileSystemEntries может быть более эффективным.

Возвращаемая коллекция не кэшируется; при каждом вызове GetEnumerator в коллекции запускается новое перечисление.

Применяется к

EnumerateFileSystemEntries(String, String, EnumerationOptions)

Исходный код:
Directory.cs
Исходный код:
Directory.cs
Исходный код:
Directory.cs

Возвращает перечисляемую коллекцию имен файлов и имен каталогов по указанному пути, соответствующих шаблону поиска и параметрам перечисления.

public:
 static System::Collections::Generic::IEnumerable<System::String ^> ^ EnumerateFileSystemEntries(System::String ^ path, System::String ^ searchPattern, System::IO::EnumerationOptions ^ enumerationOptions);
public static System.Collections.Generic.IEnumerable<string> EnumerateFileSystemEntries (string path, string searchPattern, System.IO.EnumerationOptions enumerationOptions);
static member EnumerateFileSystemEntries : string * string * System.IO.EnumerationOptions -> seq<string>
Public Shared Function EnumerateFileSystemEntries (path As String, searchPattern As String, enumerationOptions As EnumerationOptions) As IEnumerable(Of String)

Параметры

path
String

Относительный или абсолютный путь к каталогу для поиска. В этой строке не учитывается регистр знаков.

searchPattern
String

Строка поиска, которая должна сравниваться с именами файлов и каталогов в параметре path. Этот параметр может содержать сочетание допустимых литеральных и подстановочных символов, но не поддерживает регулярные выражения.

enumerationOptions
EnumerationOptions

Объект, описывающий конфигурацию поиска и перечисления для использования.

Возвращаемое значение

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

Исключения

.NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или недопустимые символы. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

-или-

searchPattern не содержит допустимый шаблон.

path имеет значение null.

-или-

searchPattern имеет значение null.

searchOption не является допустимым значением SearchOption.

Недопустимый path: например, он ссылается на несопоставленный диск.

path — это имя файла.

Указанный путь, имя файла или их комбинация превышает максимальную длину, заданную в системе.

У вызывающего объекта отсутствует необходимое разрешение.

У вызывающего объекта отсутствует необходимое разрешение.

Комментарии

searchPattern Может быть сочетанием литеральных и подстановочных знаков, но не поддерживает регулярные выражения. Следующие описатели с подстановочными знаками разрешены в searchPattern.

Описатель с подстановочным знаком Соответствует
* (звездочка) Ноль или более символов в этой позиции.
? (вопросительный знак) Ровно один символ в этой позиции.

Символы, отличные от подстановочного знака, являются литеральными символами. Например, searchPattern строка "*t" ищет все имена, path оканчивающиеся буквой "t". Строка searchPattern "s*" ищет все имена, path начинающиеся с буквы "s".

Примечание

При использовании подстановочного знака звездочки в searchPattern таком объекте, как "*.txt", количество символов в указанном расширении влияет на поиск следующим образом:

  • Если указанное расширение имеет ровно три символа, метод возвращает файлы с расширениями, начинающимися с указанного расширения. Например, "*.xls" возвращает как "book.xls", так и "book.xlsx".
  • Во всех остальных случаях метод возвращает файлы, которые точно соответствуют указанному расширению. Например, "*.ai" возвращает "file.ai", но не "file.aif".

При использовании подстановочного знака вопросительного знака этот метод возвращает только файлы, соответствующие указанному расширению. Например, при использовании двух файлов, "file1.txt" и "file1.txtother", шаблон поиска "file?.txt" возвращает только первый файл, а шаблон поиска "file*.txt" возвращает оба файла.

searchPattern не может заканчиваться двумя точками ("..") или содержать две точки (".."), за которыми следует DirectorySeparatorChar или AltDirectorySeparatorChar, и не может содержать недопустимые символы. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars.

Сведения об относительном пути можно указать с path помощью параметра . Относительные сведения о пути интерпретируются как относительные относительно текущего рабочего каталога, который можно определить с помощью GetCurrentDirectory метода .

Методы EnumerateFileSystemEntries и GetFileSystemEntries отличаются следующим образом: при использовании EnumerateFileSystemEntriesможно начать перечисление коллекции записей до возврата всей коллекции. При использовании GetFileSystemEntriesнеобходимо дождаться возврата всего массива записей, прежде чем получить доступ к массиву. Таким образом, при работе с большим количеством файлов и каталогов EnumerateFileSystemEntries может быть более эффективным.

Возвращаемая коллекция не кэшируется; при каждом вызове GetEnumerator в коллекции запускается новое перечисление.

Применяется к

EnumerateFileSystemEntries(String, String, SearchOption)

Исходный код:
Directory.cs
Исходный код:
Directory.cs
Исходный код:
Directory.cs

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

public:
 static System::Collections::Generic::IEnumerable<System::String ^> ^ EnumerateFileSystemEntries(System::String ^ path, System::String ^ searchPattern, System::IO::SearchOption searchOption);
public static System.Collections.Generic.IEnumerable<string> EnumerateFileSystemEntries (string path, string searchPattern, System.IO.SearchOption searchOption);
static member EnumerateFileSystemEntries : string * string * System.IO.SearchOption -> seq<string>
Public Shared Function EnumerateFileSystemEntries (path As String, searchPattern As String, searchOption As SearchOption) As IEnumerable(Of String)

Параметры

path
String

Относительный или абсолютный путь к каталогу для поиска. В этой строке не учитывается регистр знаков.

searchPattern
String

Строка поиска, которая должна сравниваться с записями файловой системы, расположенными по пути path. Этот параметр может содержать сочетание допустимого литерального пути и подстановочного символа (* и ?), но не поддерживает регулярные выражения.

searchOption
SearchOption

Одно из значений перечисления, определяющее, следует ли выполнять поиск только в текущем каталоге или также во всех его подкаталогах. Значение по умолчанию — TopDirectoryOnly.

Возвращаемое значение

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

Исключения

.NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или недопустимые символы. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

-или-

searchPattern не содержит допустимый шаблон.

path имеет значение null.

-или-

searchPattern имеет значение null.

searchOption не является допустимым значением SearchOption.

Недопустимый path: например, он ссылается на несопоставленный диск.

path — это имя файла.

Указанный путь, имя файла или их комбинация превышает максимальную длину, заданную в системе.

У вызывающего объекта отсутствует необходимое разрешение.

У вызывающего объекта отсутствует необходимое разрешение.

Комментарии

searchPattern Может быть сочетанием литеральных и подстановочных знаков, но не поддерживает регулярные выражения. Следующие описатели с подстановочными знаками разрешены в searchPattern.

Описатель с подстановочным знаком Соответствует
* (звездочка) Ноль или более символов в этой позиции.
? (вопросительный знак) Ровно один символ в этой позиции.

Символы, отличные от подстановочного знака, являются литеральными символами. Например, searchPattern строка "*t" ищет все имена, path оканчивающиеся буквой "t". Строка searchPattern "s*" ищет все имена, path начинающиеся с буквы "s".

Примечание

При использовании подстановочного знака звездочки в searchPattern таком объекте, как "*.txt", количество символов в указанном расширении влияет на поиск следующим образом:

  • Если указанное расширение имеет ровно три символа, метод возвращает файлы с расширениями, начинающимися с указанного расширения. Например, "*.xls" возвращает как "book.xls", так и "book.xlsx".
  • Во всех остальных случаях метод возвращает файлы, которые точно соответствуют указанному расширению. Например, "*.ai" возвращает "file.ai", но не "file.aif".

При использовании подстановочного знака вопросительного знака этот метод возвращает только файлы, соответствующие указанному расширению. Например, при использовании двух файлов, "file1.txt" и "file1.txtother", шаблон поиска "file?.txt" возвращает только первый файл, а шаблон поиска "file*.txt" возвращает оба файла.

searchPattern не может заканчиваться двумя точками ("..") или содержать две точки (".."), за которыми следует DirectorySeparatorChar или AltDirectorySeparatorChar, и не может содержать недопустимые символы. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars.

Сведения об относительном пути можно указать с path помощью параметра . Относительные сведения о пути интерпретируются как относительные относительно текущего рабочего каталога, который можно определить с помощью GetCurrentDirectory метода .

Методы EnumerateFileSystemEntries и GetFileSystemEntries отличаются следующим образом: при использовании EnumerateFileSystemEntriesможно начать перечисление коллекции записей до возврата всей коллекции. При использовании GetFileSystemEntriesнеобходимо дождаться возврата всего массива записей, прежде чем получить доступ к массиву. Таким образом, при работе с большим количеством файлов и каталогов EnumerateFileSystemEntries может быть более эффективным.

Возвращаемая коллекция не кэшируется; при каждом вызове GetEnumerator в коллекции запускается новое перечисление.

Применяется к