方法: ファイルを移動する (Visual Basic)

My.Computer.FileSystem.MoveFile メソッドは、ファイルを別のフォルダーに移動するために使用できます。 ターゲットの構造が存在しない場合は作成されます。

ファイルを移動するには

  • MoveFile メソッドを使用し、ソース ファイルおよびターゲット ファイル両方のファイル名と場所を指定して、ファイルを移動します。 この例では、 test.txt という名前のファイルを TestDir1 から TestDir2に移動します。 ソース ファイル名と同じでも、ターゲット ファイル名を指定することにご注意ください。

    My.Computer.FileSystem.MoveFile("C:\TestDir1\test.txt",
        "C:\TestDir2\test.txt")
    

ファイルを移動し、その名前を変更するには

  • MoveFile メソッドを使用してファイルを移動します。その際、ソース ファイルのファイル名と場所、ターゲットの場所、ターゲットの場所での新しい名前を指定します。 この例では、 test.txt という名前のファイルを TestDir1 から TestDir2 に移動し、 nexttest.txtという名前に変更します。

    My.Computer.FileSystem.MoveFile("C:\TestDir1\test.txt",
        "C:\TestDir2\nexttest.txt",
        FileIO.UIOption.AllDialogs,
        FileIO.UICancelOption.ThrowException)
    

信頼性の高いプログラミング

次の条件を満たす場合は、例外が発生する可能性があります。

  • パスが有効ではありません。原因として、長さが 0 の文字列であるか、空白のみが含まれているか、無効な文字が含まれているか、デバイス パスである (先頭が \\.\ である) ことが考えられます (ArgumentException)。

  • パスが Nothing であるため、有効でない (ArgumentNullException)

  • destinationFileNameNothing または空の文字列である (ArgumentNullException)。

  • ソース ファイルが正しくない、または存在しない (FileNotFoundException)。

  • パスを組み合わせると既存のディレクトリと同じになる、移動先のファイルが既に存在し overwriteFalseに設定されている、移動先ディレクトリにある同じ名前のファイルが使用中である、またはユーザーがファイルにアクセスするのに必要なアクセス許可がない (IOException)。

  • パス内のファイル名またはディレクトリ名にコロン (:) が含まれているか、または形式が無効である (NotSupportedException)

  • showUITrueに設定され、 onUserCancelThrowExceptionに設定されている状態で、ユーザーが操作をキャンセルしたか、または指定されていない I/O エラーが発生した (OperationCanceledException)。

  • パスがシステムで定義されている最大長を超えている (PathTooLongException)。

  • ユーザーがパスを参照するのに必要なアクセス許可がない (SecurityException)

  • ユーザーに必要なアクセス許可がない (UnauthorizedAccessException)。

関連項目