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

更新 : 2007 年 11 月

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", _
        FileIO.UIOption.AllDialogs, _
        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", _
        FileIO.UIOption.AllDialogs, _
        FileIO.UICancelOption.DoNothing)
    

堅牢性の高いプログラム

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

  • パスが無効である。1) 長さが 0 の文字列である、2) 空白だけが含まれている、3) 無効な文字が含まれている、4) デバイス パスである (\\.\ で開始されている)、のいずれかの理由が考えられる (ArgumentException)。

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

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

  • ソース ファイルが有効でないか、または存在しない (FileNotFoundException)。

  • パスを組み合わせると既存のディレクトリと同じになる (IOException)。

  • 移動先にファイルが既に存在し、overwrite が False に設定されている (IOException)。

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

  • 移動先フォルダの同名のファイルが使用中である (IOException).

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

  • ShowUI が True に、onUserCancel が ThrowException に、それぞれ設定されている状況で、ユーザーが操作をキャンセルした (OperationCanceledException)。

  • ShowUI が True に、onUserCancel が ThrowException に、それぞれ設定されている状況で、未指定の I/O エラーが発生した (OperationCanceledException)。

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

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

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

参照

処理手順

方法 : Visual Basic で特定のパターンを持つファイルをディレクトリにコピーする

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

方法 : Visual Basic でディレクトリを別のディレクトリにコピーする

方法 : Visual Basic でファイルの名前を変更する

参照

My.Computer.FileSystem オブジェクト

My.Computer.FileSystem.CopyFile メソッド

UICancelOption 列挙型