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


Практическое руководство. Копирование файлов в каталог с использованием шаблона в Visual Basic

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

Если соответствующие файлы не найдены, возвращается пустая коллекция.

Для копирования файлов в каталог можно использовать метод CopyFile.

Копирование файлов по заданному шаблону в каталог

  1. Для получения списка файлов используйте метод GetFiles.В этом примере возвращаются все RTF-файлы в заданном каталоге.

    For Each foundFile As String In My.Computer.FileSystem.GetFiles(
        My.Computer.FileSystem.SpecialDirectories.MyDocuments,
        Microsoft.VisualBasic.FileIO.SearchOption.SearchTopLevelOnly, "*.rtf")
    
  2. Для копирования файлов используйте метод CopyFile.В этом примере производится копирование файлов в каталог с именем testdirectory.

    My.Computer.FileSystem.CopyFile(foundFile, "C:\testdirectory\" & My.Computer.FileSystem.GetName(foundFile))
    
  3. Закройте оператор For оператором Next.

    Next
    

Пример

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

For Each foundFile As String In My.Computer.FileSystem.GetFiles(
    My.Computer.FileSystem.SpecialDirectories.MyDocuments,
    Microsoft.VisualBasic.FileIO.SearchOption.SearchTopLevelOnly, "*.rtf")

    My.Computer.FileSystem.CopyFile(foundFile, "C:\testdirectory\" & foundFile)
Next

Безопасность

При следующих условиях возможно возникновение исключения.

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

  • Путь не является допустимым, поскольку он равен Nothing (ArgumentNullException).

  • Каталог не существует (DirectoryNotFoundException).

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

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

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

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

См. также

Задачи

Практическое руководство. Поиск подкаталогов по шаблону в Visual Basic

Исправление неполадок, связанных с чтением из текстовых файлов и записью в такие файлы (Visual Basic)

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

Ссылки

CopyFile

GetFiles