方法 : Visual Basic でファイルのコピーを別のディレクトリに作成する

My.Computer.FileSystem.CopyFile メソッドでは、ファイルをコピーできます。 このパラメーターでは、既存のファイルの上書き、ファイルの名前変更、操作の進行状況の表示、ユーザーによる操作のキャンセルが可能になります。

テキスト ファイルを別のフォルダーにコピーするには

  • CopyFile メソッドを使用し、ソース ファイルとターゲット ディレクトリを指定してファイルをコピーします。 overwrite パラメーターでは、既存のファイルを上書きするかどうかを指定できます。 次のコード例では、CopyFile の使用方法を示します。

    ' Copy the file to a new location without overwriting existing file.
    My.Computer.FileSystem.CopyFile(
        "C:\UserFiles\TestFiles\testFile.txt",
        "C:\UserFiles\TestFiles2\testFile.txt")
    
    ' Copy the file to a new folder, overwriting existing file.
    My.Computer.FileSystem.CopyFile(
        "C:\UserFiles\TestFiles\testFile.txt",
        "C:\UserFiles\TestFiles2\testFile.txt",
        Microsoft.VisualBasic.FileIO.UIOption.AllDialogs,
        Microsoft.VisualBasic.FileIO.UICancelOption.DoNothing)
    
    ' Copy the file to a new folder and rename it.
    My.Computer.FileSystem.CopyFile(
        "C:\UserFiles\TestFiles\testFile.txt",
        "C:\UserFiles\TestFiles2\NewFile.txt",
        Microsoft.VisualBasic.FileIO.UIOption.AllDialogs,
        Microsoft.VisualBasic.FileIO.UICancelOption.DoNothing)
    

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

次の条件を満たす場合は、例外がスローされる可能性があります。

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

  • システムが絶対パスを取得できなかった (ArgumentException)。

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

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

  • 結合したパスが、既存のディレクトリを指している (IOException)。

  • リンク先ファイルが存在し、overwriteFalse に設定されている (IOException)。

  • ファイルにアクセスする十分なアクセス許可がユーザーにない (IOException)。

  • 同じ名前がターゲット フォルダー内のファイルで使用されている (IOException)。

  • パス内のファイル名またはフォルダー名にコロン (:) が含まれている、または形式が無効である (NotSupportedException)。

  • ShowUITrue に設定され、onUserCancelThrowExceptionに設定され、ユーザーが操作をキャンセルしている (OperationCanceledException)。

  • ShowUITrue に設定され、onUserCancelThrowException に設定され、未指定の I/O エラーが発生する (OperationCanceledException)。

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

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

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

関連項目