Метод My.Computer.FileSystem.CopyFile
Обновлен: Ноябрь 2007
Выполняет копирование файла в новое место.
' Usage
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName)
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName ,overwrite)
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName ,showUI)
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName ,showUI ,onUserCancel)
' Declaration
Public Sub CopyFile( _
ByVal sourceFileName As String, _
ByVal destinationFileName As String _
)
' -or-
Public Sub CopyFile( _
ByVal sourceFileName As String, _
ByVal destinationFileName As String, _
ByVal overwrite As Boolean _
)
' -or-
Public Sub CopyFile( _
ByVal sourceFileName As String, _
ByVal destinationFileName As String, _
ByVal showUI As UIOption _
)
' -or-
Public Sub CopyFile( _
ByVal sourceFileName As String, _
ByVal destinationFileName As String, _
ByVal showUI As UIOption, _
ByVal onUserCancel As UICancelOption _
)
Параметры
sourceFileName
String. Копируемый файл. Обязательный.destinationFileName
String. Расположение, в которое должен быть скопирован файл. Обязательный.overwrite
Boolean. Указывает, выполнять ли перезапись существующих файлов. По умолчанию используется значение False. Обязательный.showUI
UIOption. Указывает, следует ли осуществлять визуальное отслеживание хода выполнения операции. По умолчанию используется значение UIOption.OnlyErrorDialogs. Обязательный.onUserCancel
UICancelOption. Определяет выполняемые действия, если во время операции пользователь нажмет кнопку Отмена. По умолчанию используется значение ThrowException. Обязательный.
Исключения
Исключение может возникнуть при следующих условиях:
Путь является недопустимым по одной из следующих причин: строка имеет нулевую длину; строка содержит только пробелы; строка содержит недопустимые символы; строка является путем устройства (начинается с \\.\) (ArgumentException).
Системе не удается извлечь абсолютный путь (ArgumentException).
destinationFileName содержит информацию о пути (ArgumentException).
Путь является недопустимым, поскольку он равен Nothing (ArgumentNullException).
Параметр destinationFileName равен Nothing или является пустой строкой (ArgumentNullException).
Исходный файл не является допустимым или не существует (FileNotFoundException).
Комбинированный путь указывает на существующий каталог (IOException).
Файл уже существует, а параметр overwrite имеет значение False (IOException).
Пользователь не имеет необходимых разрешений для доступа к файлу (IOException).
Файл в папке назначения с тем же именем уже используется (IOException).
Имя файла или каталога в пути содержит двоеточие (:) или имеет недопустимый формат (NotSupportedException).
Параметр UICancelOption установлен в ThrowException, при этом пользователь отменил операцию (OperationCanceledException).
UICancelOption установлен в ThrowException, и возникла неопределенная ошибка ввода-вывода (OperationCanceledException).
Длина пути превышает максимальную длину, определенную в системе (PathTooLongException).
У пользователя нет необходимого разрешения (UnauthorizedAccessException).
У пользователя нет необходимых разрешений для просмотра пути (SecurityException).
Заметки
CopyFile не сохраняет элементы управления доступом. Вновь созданный файл наследует элементы управления доступом по умолчанию из каталога, в котором он создан.
Задачи
В следующей таблице приведены примеры задач, в которых используется метод My.Computer.FileSystem.CopyFile.
To |
См. разделы |
---|---|
Копирование файла в тот же каталог |
Практическое руководство. Создание копии файла в том же каталоге в Visual Basic |
Копирование файла в другой каталог |
Практическое руководство. Создание копии файла в другом каталоге в Visual Basic |
Пример
В этом примере файл Test.txt копируется в каталог TestFiles2 без перезаписи существующих файлов.
My.Computer.FileSystem.CopyFile _
("C:\UserFiles\TestFiles\test.txt", _
"C:\UserFiles\TestFiles2")
Замените пути на те, которые требуется использовать в коде.
В этом примере файл Test.txt копируется в каталог TestFiles2 и переименовывается в NewFile.txt.
My.Computer.FileSystem.CopyFile _
("C:\UserFiles\TestFiles\test.txt", _
"C:\UserFiles\TestFiles2", "NewFile.txt", FileIO.UICancelOption.DoNothing)
Замените пути на те, которые требуется использовать в коде.
Требования
Пространство имен:Microsoft.VisualBasic.MyServices
Класс:FileSystemProxy (предоставляет доступ к FileSystem)
Сборка: библиотека времени выполнения Visual Basic (в Microsoft.VisualBasic.dll)
Доступность по типу проекта
Тип проекта |
Доступность |
---|---|
Приложение Windows |
Да |
Библиотека классов |
Да |
Консольное приложение |
Да |
Библиотека элементов управления Windows |
Да |
Библиотека веб-элементов управления |
Да |
Служба Windows |
Да |
Веб-узел |
Да |
Разрешения
Могут потребоваться следующие разрешения.
Разрешение |
Описание |
---|---|
Управляет доступом к переменным среды. Связанное перечисление: Unrestricted. |
|
Управляет доступом к файлам и папкам. Связанное перечисление: Unrestricted. |
|
Управляет доступом к переменным реестра. Связанное перечисление: Unrestricted. |
|
Управляет разрешениями, относящимися к пользовательским интерфейсам и буферу обмена. Связанное перечисление: SafeSubWindows. |
Дополнительные сведения см. в разделах Управление доступом для кода и Запрос разрешений.
См. также
Задачи
Практическое руководство. Копирование файлов в каталог с использованием шаблона в Visual Basic
Практическое руководство. Создание копии файла в том же каталоге в Visual Basic
Практическое руководство. Копирование каталога в другой каталог в Visual Basic
Практическое руководство. Переименование файла в Visual Basic