Compartilhar via


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).

Confira também