Como renomear um arquivo no Visual Basic
No Visual Basic, há duas maneiras de renomear um arquivo. Você pode usar o objeto de tempo de execução do Visual Basic My.Computer.FileSystem
ou o objeto System.IO.File
fornecido pelo .NET para renomear um arquivo.
Renomear com .NET
O objeto System.IO.File
não contém um método para renomear um arquivo, em vez disso, use o método Move
para "mover" o arquivo para o mesmo local, mas com um nome de arquivo diferente. Esse método também pode ser usado para mover o arquivo para um local diferente com um nome diferente, executando uma movimentação e renomeação juntos.
O exemplo a seguir renomeia o arquivo localizado na pasta My Documents
de TextFile.txt
para 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)
Renomear com o tempo de execução do Visual Basic
Use o método RenameFile
do objeto My.Computer.FileSystem
para renomear um arquivo, fornecendo o caminho completo do arquivo e o novo nome de arquivo. Esse método não pode ser usado para mover um arquivo para um diretório diferente. Para saber como mover um arquivo, consulte Como mover um arquivo no Visual Basic.
O exemplo a seguir renomeia o arquivo localizado na pasta My Documents
de TextFile.txt
para 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")
O Visual Studio fornece um snippet de código do IntelliSense que usa My.Computer.FileSystem.RenameFile
. O snippet está localizado em Sistema de Arquivos – Processando Unidades, Pastas e Arquivos. Para obter mais informações, consulte Snippets de Código.
Programação robusta
As seguintes condições podem causar uma exceção:
- O caminho não é válido por um dos seguintes motivos: é uma cadeia de comprimento zero, contém apenas espaços em branco, contém caracteres inválidos ou é um caminho de dispositivo (começa com \\.\) (ArgumentException).
newName
contém informações de caminho (ArgumentException).- O caminho não é válido porque é
Nothing
(ArgumentNullException). newName
éNothing
ou é uma cadeia de caracteres vazia (ArgumentNullException).- O arquivo de origem não é válido ou não existe (FileNotFoundException).
- Há um arquivo ou diretório existente com o nome especificado em
newName
(IOException). - O caminho excede o comprimento máximo definido pelo sistema (PathTooLongException).
- Um nome de arquivo ou de diretório no caminho contém dois-pontos (:) ou está em um formato inválido (NotSupportedException).
- O usuário não possui permissões necessárias para exibir o caminho (SecurityException).
- O usuário não tem a permissão necessária (UnauthorizedAccessException).