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


Практическое руководство. Получение коллекции файлов в каталоге в Visual Basic

Перегрузки FileSystem.GetFiles метода возвращают коллекцию строк только для чтения, представляющую имена файлов в каталоге:

  • Используйте перегрузку GetFiles(String) для простого поиска файлов в указанном каталоге без поиска подкаталогов.

  • Используйте перегрузку GetFiles(String, SearchOption, String[]), чтобы указать дополнительные параметры поиска. Можно использовать параметр wildCards для указания шаблона поиска. Чтобы включить вложенные каталоги в поиск, установите параметр searchType в SearchOption.SearchAllSubDirectories.

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

Перечисление файлов в каталоге

  • Используйте одну из FileSystem.GetFiles перегрузок метода, указав в параметре directory имя и путь каталога для поиска. В следующем примере возвращаются все файлы в каталоге и добавляются в ListBox1.

    For Each foundFile As String In My.Computer.FileSystem.GetFiles(
      My.Computer.FileSystem.SpecialDirectories.MyDocuments)
    
        listBox1.Items.Add(foundFile)
    Next
    

Надежное программирование

Следующие условия могут вызвать исключение:

  • Путь недействителен по одной из следующих причин: это строка нулевой длины, она содержит только пробелы, содержит недопустимые символы, или это путь устройства (начинается с \\.\).\) (ArgumentException).

  • Путь недействителен, так как он Nothing (ArgumentNullException).

  • directory не существует (DirectoryNotFoundException).

  • directory указывает на существующий файл (IOException).

  • Путь превышает системную максимальную длину (PathTooLongException).

  • Имя файла или каталога в пути содержит двоеточие (:) или имеет недопустимый формат (NotSupportedException).

  • У пользователя отсутствуют необходимые разрешения для просмотра пути (SecurityException).

  • У пользователя отсутствуют необходимые разрешения (UnauthorizedAccessException).

См. также