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ámetro overwrite le permite especificar si se deben sobrescribir los archivos existentes. Los ejemplos de código siguientes muestran cómo usar 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)
    

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 en False (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 en True, onUserCancel está establecido en ThrowException y el usuario ha cancelado la operación (OperationCanceledException).

  • ShowUI está establecido en True, onUserCancel está establecido en ThrowException 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).

Vea también