Метод My.Computer.FileSystem.GetDirectories
Обновлен: Ноябрь 2007
Возвращает коллекцию строк, представляющих имена путей вложенных папок в каталоге.
' Usage
Dim value As System.Collections.ObjectModel.ReadOnlyCollection(Of String) = My.Computer.FileSystem.GetDirectories(directory)
Dim value As System.Collections.ObjectModel.ReadOnlyCollection(Of String) = My.Computer.FileSystem.GetDirectories(directory ,searchType ,wildcards)
' Declaration
Public Function GetDirectories( _
ByVal directory As String _
) As System.Collections.ObjectModel.ReadOnlyCollection(Of String)
' -or-
Public Function GetDirectories( _
ByVal directory As String, _
ByVal searchType As SearchOption, _
ByVal wildcards As String() _
) As System.Collections.ObjectModel.ReadOnlyCollection(Of String)
Параметры
directory
String. Путь к каталогу и его имя. Обязательно.searchType
Перечисление SearchOption. Следует ли включать вложенные папки. По умолчанию используется значение SearchOption.SearchTopLevelOnly. Обязательно.wildcards
String. Шаблон для соответствия имен. Обязательно.
Возвращаемое значение
Коллекция String, доступная только для чтения.
Исключения
Следующие условия могут вызвать исключение.
Путь недопустим по одной из следующих причин: это строка нулевой длины (пустая строка); строка содержит только пробелы; строка содержит недопустимые символы; это путь устройства (начинается с \\.\) (ArgumentException).
Путь не является допустимым, поскольку он равен Nothing (ArgumentNullException).
Один или несколько указанных подстановочных знаков является Nothing, пустой строкой или содержит только пробелы (ArgumentNullException).
Параметр directory не существует (DirectoryNotFoundException).
Параметр directory указывает на существующий файл (IOException).
Длина пути превышает максимальную длину, определенную в системе (PathTooLongException).
Имя файла или каталога в пути содержит двоеточие (:) или имеет недопустимый формат (NotSupportedException).
У пользователя отсутствуют необходимые разрешения на просмотр пути (SecurityException).
Пользователь не имеет необходимых разрешений (UnauthorizedAccessException).
Заметки
Для указания конкретного шаблона можно использовать параметр wildcards. Если содержимое вложенных папок нужно включить в поиск, присвойте параметру searchType значение SearchAllSubDirectories.
Пустая коллекция возвращается, если каталоги, соответствующие заданному шаблону, не найдены.
Задачи
В приведенной ниже таблице показаны примеры задач, в которых используется метод My.Computer.FileSystem.GetDirectories.
To |
См. раздел |
---|---|
Перечисление вложенных папок по определенному шаблону |
Практическое руководство. Поиск подкаталогов по шаблону в Visual Basic |
Пример
Следующий пример возвращает все каталоги в структуре каталога, которые содержат слово Logs в своих именах, и добавляет их в ListBox1.
For Each foundDirectory As String In _
My.Computer.FileSystem.GetDirectories _
(My.Computer.FileSystem.SpecialDirectories.MyDocuments, _
True, "*Logs*")
ListBox1.Items.Add(foundDirectory)
Next
В данном примере требуется наличие в форме объекта ListBox с именем ListBox1.
Требования
Пространство имен:Microsoft.VisualBasic.MyServices
Класс:FileSystemProxy (предоставляет доступ к FileSystem)
Сборка: библиотека времени выполнения Visual Basic (в Microsoft.VisualBasic.dll)
Доступность по типу проекта
Тип проекта |
Доступность |
---|---|
Приложение Windows |
Да |
Библиотека классов |
Да |
Консольное приложение |
Да |
Библиотека элементов управления Windows |
Да |
Библиотека веб-элементов управления |
Да |
Служба Windows |
Да |
Веб-узел |
Да |
Разрешения
Могут потребоваться следующие разрешения:
Разрешение |
Описание |
---|---|
Определяет возможность доступа к файлам и папкам. Связанное перечисление: Unrestricted. |
Дополнительные сведения см. в разделах Управление доступом для кода и Запрос разрешений.