如何:在 Visual Basic 中重新命名檔案
在 Visual Basic 中,有兩種檔案重新命名方式。 您可以使用 Visual Basic 執行階段物件 My.Computer.FileSystem
,或 .NET 提供的 System.IO.File
物件來重新命名檔案。
使用 .NET 重新命名
System.IO.File
物件不包含重新命名檔案的方法,請改用 Move
方法,將檔案「移動」到相同的位置,但使用不同的檔名。 這個方法也可以用來將檔案移至不同名稱的不同位置,並同時執行移動和重新命名。
下列範例會將位於 My Documents
資料夾中的檔案從 TextFile.txt
重新命名為 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)
使用 Visual Basic 執行階段重新命名
使用 My.Computer.FileSystem
物件的 RenameFile
方法,藉由提供檔案的完整路徑和新的檔名來重新命名檔案。 這個方法無法用來將檔案移至不同的目錄。 若要了解如何移動檔案,請參閱作法:在 Visual Basic 中移動檔案。
下列範例會將位於 My Documents
資料夾中的檔案從 TextFile.txt
重新命名為 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 提供使用 My.Computer.FileSystem.RenameFile
的 IntelliSense 程式碼片段。 程式碼片段位於檔案系統 - 處理磁碟、資料夾和檔案。 如需詳細資訊,請參閱 Code Snippets。
穩固程式設計
以下條件可能會造成例外狀況:
- 因下列其中一個原因而導致路徑無效:其為長度為零的字串、其只包含空白字元、其包含無效的字元,或其為裝置路徑 (開頭為 \\.\) (ArgumentException)。
newName
包含路徑資訊 (ArgumentException)。- 此路徑無效,因為其為
Nothing
(ArgumentNullException)。 newName
為Nothing
或空字串 (ArgumentNullException)。- 來源檔案無效或不存在 (FileNotFoundException)。
- 已有
newName
中所指定之名稱的檔案或目錄 (IOException)。 - 路徑超過系統定義的最大長度 (PathTooLongException)。
- 路徑中的檔案或目錄名稱含有冒號 (:),或者是無效的格式 (NotSupportedException)。
- 使用者缺乏必要的使用權限來檢視路徑 (SecurityException)。
- 使用者沒有必要的權限 (UnauthorizedAccessException)。