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

Для копирования файлов используйте метод My.Computer.FileSystem.CopyFile. Эти параметры обеспечивают возможность перезаписи существующих файлов, переименования файлов и отображения хода выполнения операции, а также отмены операции пользователем.

Создание копии файла в том же каталоге

  • Используйте метод CopyFile, указав конечный файл и расположение. В следующем примере создается копия test.txt с именем test2.txt.

    My.Computer.FileSystem.CopyFile("C:\TestFolder\test.txt",
    "C:\TestFolder\test2.txt", Microsoft.VisualBasic.FileIO.UIOption.OnlyErrorDialogs, FileIO.UICancelOption.DoNothing)
    

Создание копии файла в том же каталоге, перезапись существующих файлов

  • Используйте метод CopyFile, указав конечный файл и расположение и задав для параметра overwrite значение True. В следующем примере создается копия test.txt с именем test2.txt и перезаписываются существующие файлы с этим именем.

    My.Computer.FileSystem.CopyFile("C:\TestFolder\test.txt",
    "C:\TestFolder\test2.txt", True)
    

Отказоустойчивость

Исключение может возникнуть в следующих случаях:

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

  • Системе не удалось получить абсолютный путь (ArgumentException).

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

  • Исходный файл является недопустимым или не существует (FileNotFoundException).

  • Объединенный путь указывает на существующий каталог (IOException).

  • Конечный файл существует, а параметр overwrite имеет значение False (IOException).

  • Пользователь не имеет необходимых разрешений для доступа к файлу (IOException).

  • Файл в папке назначения с тем же именем уже используется (IOException).

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

  • Параметр ShowUI имеет значение True, параметр onUserCancel имеет значение ThrowException, и пользователь отменил операцию (OperationCanceledException).

  • ShowUI имеет значение True, параметр onUserCancel имеет значение ThrowException, и возникла неопределенная ошибка ввода-вывода (OperationCanceledException).

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

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

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

См. также