Cómo: Crear una copia de un archivo en el mismo directorio en Visual Basic

Use el método My.Computer.FileSystem.CopyFile para copiar archivos. Con los parámetros puede sobrescribir archivos existentes, cambiar el nombre del archivo, mostrar el progreso de la operación y permitir al usuario cancelar la operación.

Para crear una copia de un archivo en la misma carpeta

  • Use el método CopyFile, proporcionando el archivo de destino y la ubicación. En el ejemplo siguiente se crea una copia de test.txt llamada test2.txt.

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

Para crear una copia de un archivo en la misma carpeta, sobrescribiendo archivos existentes

  • Use el método CopyFile; indique el archivo de destino y la ubicación, y establezca overwrite en True. En el ejemplo siguiente se crea una copia de test.txt llamada test2.txt y sobrescribe cualquier archivo existente con dicho nombre.

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

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