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


Практическое руководство. Копирование файлов с определенным шаблоном в каталог в 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

Безопасность .NET Framework

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

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

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

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

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

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

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

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

См. также