Практическое руководство. Создание копии файла в другом каталоге в Visual Basic
Метод My.Computer.FileSystem.CopyFile
позволяет копировать файлы. Его параметры обеспечивают возможность перезаписи существующих файлов, переименования файлов и отображения хода выполнения операции, а также отмены операции пользователем.
Копирование текстового файла в другую папку
Используйте для копирования файла метод
CopyFile
, исходный файл и целевой каталог. Параметрoverwrite
позволяет указать, следует ли перезаписывать существующие файлы. В следующем примере кода демонстрируется использование методаCopyFile
.' Copy the file to a new location without overwriting existing file. My.Computer.FileSystem.CopyFile( "C:\UserFiles\TestFiles\testFile.txt", "C:\UserFiles\TestFiles2\testFile.txt") ' Copy the file to a new folder, overwriting existing file. My.Computer.FileSystem.CopyFile( "C:\UserFiles\TestFiles\testFile.txt", "C:\UserFiles\TestFiles2\testFile.txt", Microsoft.VisualBasic.FileIO.UIOption.AllDialogs, Microsoft.VisualBasic.FileIO.UICancelOption.DoNothing) ' Copy the file to a new folder and rename it. My.Computer.FileSystem.CopyFile( "C:\UserFiles\TestFiles\testFile.txt", "C:\UserFiles\TestFiles2\NewFile.txt", Microsoft.VisualBasic.FileIO.UIOption.AllDialogs, Microsoft.VisualBasic.FileIO.UICancelOption.DoNothing)
Отказоустойчивость
Исключение может возникнуть в следующих случаях:
Путь недействителен по одной из следующих причин: это строка нулевой длины, она содержит только пробелы, содержит недопустимые символы, или это путь устройства (начинается с \\.\).\) (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).