Cómo: Cambiar el nombre de un archivo en Visual Basic
En Visual Basic, hay dos maneras de cambiar el nombre de un archivo. Puede usar el objeto en tiempo de ejecución de Visual Basic My.Computer.FileSystem
o el objeto System.IO.File
proporcionado por .NET para cambiar el nombre de un archivo.
Cambio de nombre con .NET
El objeto System.IO.File
no contiene un método para cambiar el nombre de un archivo; en su lugar, use el método Move
para "mover" el archivo a la misma ubicación, pero con un nombre de archivo diferente. Este método también se puede usar para mover el archivo a una ubicación diferente con un nombre diferente, realizando un movimiento y cambiar el nombre juntos.
En el ejemplo siguiente se cambia el nombre del archivo ubicado en la carpeta My Documents
de TextFile.txt
a NewName.txt
.
Dim myDocsFolder As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments
Dim filePathSource = System.IO.Path.Combine(myDocsFolder, "TextFile.txt")
Dim filePathTarget = System.IO.Path.Combine(myDocsFolder, "NewName.txt")
System.IO.File.Move(filePathSource, filePathTarget)
Cambiar el nombre con el tiempo de ejecución de Visual Basic
Utilice el método RenameFile
del objeto My.Computer.FileSystem
para cambiar el nombre de un archivo proporcionando la ruta de acceso completa al archivo y al nuevo nombre de archivo. Este método no se puede usar para mover un archivo a otro directorio. Para obtener información sobre cómo mover un archivo, consulte Cómo: mover un archivo en Visual Basic.
En el ejemplo siguiente se cambia el nombre del archivo ubicado en la carpeta My Documents
de TextFile.txt
a NewName.txt
.
Dim myDocsFolder As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments
Dim filePath = System.IO.Path.Combine(myDocsFolder, "TextFile.txt")
My.Computer.FileSystem.RenameFile(filePath, "NewName.txt")
Visual Studio proporciona un fragmento de código de IntelliSense que usa My.Computer.FileSystem.RenameFile
. El fragmento de código se encuentra en Sistema de archivos: unidades de procesamiento, carpetas y archivos. Para obtener más información, vea Fragmentos de código.
Programación sólida
Las condiciones siguientes pueden generar una excepción:
- La ruta de acceso no es válida por uno de los siguientes motivos: es una cadena de longitud cero, contiene solo espacios en blanco, contiene caracteres no válidos o es una ruta de acceso del dispositivo (comienza por \\.\) (ArgumentException).
newName
contiene información de ruta de acceso (ArgumentException).- La ruta de acceso no es válida porque es
Nothing
(ArgumentNullException). newName
esNothing
o una cadena vacía (ArgumentNullException).- El archivo de origen no es válido o no existe (FileNotFoundException).
- Hay un archivo o directorio existente con el nombre especificado en
newName
(IOException). - La ruta supera la longitud máxima definida por el sistema (PathTooLongException).
- Un nombre de archivo o de directorio de la ruta de acceso contiene un signo de dos puntos (:) o tiene un formato no válido (NotSupportedException).
- El usuario no tiene los permisos necesarios para ver la ruta de acceso (SecurityException).
- El usuario no tiene el permiso necesario (UnauthorizedAccessException).