My.Computer.FileSystem.MoveFile 方法
更新:2007 年 11 月
將檔案移到新位置。
' Usage My.Computer.FileSystem.MoveFile(sourceFileName ,destinationFileName) My.Computer.FileSystem.MoveFile(sourceFileName ,destinationFileName ,overwrite) My.Computer.FileSystem.MoveFile(sourceFileName ,destinationFileName ,showUI) My.Computer.FileSystem.MoveFile(sourceFileName ,destinationFileName ,showUI ,onUserCancel) ' Declaration Public Sub MoveFile( _ ByVal sourceFileName As String, _ ByVal destinationFileName As String _ ) ' -or- Public Sub MoveFile( _ ByVal sourceFileName As String, _ ByVal destinationFileName As String, _ ByVal overwrite As Boolean _ ) ' -or- Public Sub MoveFile( _ ByVal sourceFileName As String, _ ByVal destinationFileName As String, _ ByVal showUI As UIOption _ ) ' -or- Public Sub MoveFile( _ ByVal sourceFileName As String, _ ByVal destinationFileName As String, _ ByVal showUI As UIOption, _ ByVal onUserCancel As UICancelOption _ )
參數
sourceFileName
String:要移動之檔案的路徑。必要項。destinationFileName
String:應該要將檔案移入其中之目錄的路徑。必要項。overwrite
Boolean:指定是否要覆寫現有的檔案。預設值為 False。必要項。showUI
UIOption 列舉型別:指定是否視覺化追蹤作業的進度。預設值為 UIOption.OnlyErrorDialogs。必要項。onUserCancel
UICancelOption 列舉型別:指定當使用者取消作業時,是否擲回例外狀況。預設值為 UICancelOption.ThrowException。必要項。
例外狀況
下列情形可能會造成例外狀況:
因下列其中一項原因而導致路徑無效:它是長度為零的字串、它只包含空白字元、它包含無效的字元,或者它是裝置路徑 (開頭為 \\.\) (ArgumentException)。
檔案名稱以反斜線 (\) 結束 (ArgumentException)。
路徑無效,因為它是 Nothing (ArgumentNullException)。
destinationFileName 為 Nothing 或空字串 (ArgumentNullException)。
原始程式檔無效或不存在 (FileNotFoundException)。
組合路徑指向現有的目錄、目的檔案存在且 overwrite 設定為 False、目標目錄中的檔案與正在使用的檔案同名,或是使用者沒有足夠的使用權限可以存取檔案 (IOException)。
路徑中的檔案或目錄名稱含有冒號 (:),或者是無效的格式 (NotSupportedException)。
onUserCancel 設為 ThrowException,而且使用者已取消作業或發生未指定的 I/O 錯誤 (OperationCanceledException)。
路徑超過系統定義的最大長度 (PathTooLongException)。
使用者缺乏必要的使用權限來檢視路徑 (SecurityException)。
使用者未具備必要的使用權限 (UnauthorizedAccessException)。
備註
如果目標結構不存在,就會建立該結構。
MoveFile 方法只有在相同的磁碟區內移動檔案時才會保留 ACE (存取控制項目)。這包括繼承的 ACE,移動時會成為直接 ACE (直接 ACE 的優先順序高於繼承的 ACE)。如果在磁碟區之間移動檔案,將不會複製 ACE。
工作
下表列出包含 My.Computer.FileSystem.MoveFile 方法的工作範例。
若要 |
請參閱 |
---|---|
移動檔案 |
|
移動檔案集合 |
|
移動目錄內容 |
範例
這個範例會將檔案 Test.txt 從 TestDir1 移到 TestDir2。
My.Computer.FileSystem.MoveFile("C:\TestDir1\test.txt", "C:\TestDir2\test.txt")
這個範例會將檔案 Test.txt 從 TestDir1 移到 TestDir2,並將它重新命名為 Test2.txt。
My.Computer.FileSystem.MoveFile("C:\TestDir1\test.txt", "C:\TestDir2\test2.txt")
需求
命名空間 (Namespace)︰Microsoft.VisualBasic.MyServices
類別 (Class):FileSystemProxy (提供對 FileSystem 的存取)
組件:Visual Basic 執行階段程式庫 (在 Microsoft.VisualBasic.dll 中)
依專案類型的可用性
專案類型 |
是否可用 |
---|---|
Windows 應用程式 |
是 |
類別庫 |
是 |
主控台應用程式 |
是 |
Windows 控制項程式庫 |
是 |
Web 控制項程式庫 |
是 |
Windows 服務 |
是 |
網站 |
是 |
使用權限
下列使用權限可能為必要:
使用權限 |
描述 |
---|---|
控制存取所有環境變數的能力。關聯的列舉型別:Unrestricted。 |
|
控制存取檔案和資料夾的功能。關聯的列舉型別:Unrestricted。 |
|
控制存取登錄變數的能力。關聯的列舉型別:Unrestricted。 |
|
控制與使用者介面和剪貼簿相關的使用權限。關聯的列舉型別:SafeSubWindows。 |