Cómo: Crear una copia de un archivo en un directorio diferente en Visual Basic
El método My.Computer.FileSystem.CopyFile
le permite copiar archivos. Sus parámetros proporcionan la capacidad de sobrescribir archivos existentes, cambiar el nombre al archivo, mostrar el progreso de la operación y permitir al usuario cancelar la operación.
Para copiar un archivo de texto en otra carpeta
Use el método
CopyFile
para copiar un archivo, especificando un archivo de origen y el directorio de destino. El parámetrooverwrite
le permite especificar si se deben sobrescribir los archivos existentes. Los ejemplos de código siguientes muestran cómo usarCopyFile
.' 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)
Programación sólida
Las condiciones siguientes pueden provocar que se produzca una excepción:
La ruta de acceso no es válida por una de las razones siguientes: es una cadena de longitud cero, solo contiene un espacio en blanco, contiene caracteres no válidos o es una ruta de acceso de dispositivo (empieza por \\.\) (ArgumentException).
El sistema no pudo recuperar la ruta de acceso absoluta (ArgumentException).
La ruta de acceso no es válida porque es
Nothing
(ArgumentNullException).El archivo de origen no es válido o no existe (FileNotFoundException).
La ruta de acceso combinada apunta a un directorio existente (IOException).
El archivo de destino existe y
overwrite
está establecido enFalse
(IOException).El usuario no tiene permisos suficientes para acceder al archivo (IOException).
Hay un archivo en uso con el mismo nombre en la carpeta de destino (IOException).
Un nombre de archivo o de carpeta de la ruta de acceso contiene un signo de dos puntos (:) o tiene un formato no válido (NotSupportedException).
ShowUI
está establecido enTrue
,onUserCancel
está establecido enThrowException
y el usuario ha cancelado la operación (OperationCanceledException).ShowUI
está establecido enTrue
,onUserCancel
está establecido enThrowException
y se produce un error de E/S no especificado (OperationCanceledException).La ruta supera la longitud máxima definida por el sistema (PathTooLongException).
El usuario no tiene el permiso necesario (UnauthorizedAccessException).
El usuario no tiene los permisos necesarios para ver la ruta de acceso (SecurityException).