Практическое руководство. Получение коллекции содержащихся в каталоге файлов в 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).