方法 : Visual Basic でディレクトリ内のすべてのファイルを削除する

更新 : 2007 年 11 月

My.Computer.FileSystem オブジェクトの DeleteFile メソッドを使用すると、ファイルを削除できます。削除したファイルをごみ箱に送るかどうか、ファイルを削除することをユーザーに確認するかどうか、ユーザーが操作をキャンセルした場合の処理方法などがオプションとして用意されています。

フォルダ内のすべてのファイルを削除するには

  1. My.Computer.FileSystem.GetFiles メソッドを使用して、ディレクトリ内のファイルを表す文字列のコレクションを取得します。

  2. For…Each ループと DeleteFile メソッドを使用して、各ファイルを順番に削除します。

    次の例は、My Documents フォルダのすべてのファイルを削除します。

    For Each foundFile As String In My.Computer.FileSystem.GetFiles( _
        My.Computer.FileSystem.SpecialDirectories.MyDocuments, _
        FileIO.SearchOption.SearchAllSubDirectories, "*.*")
    
        My.Computer.FileSystem.DeleteFile(foundFile, _
            FileIO.UIOption.AllDialogs, _
            FileIO.RecycleOption.DeletePermanently)
    Next
    

堅牢性の高いプログラム

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

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

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

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

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

  • ファイルが使用中の場合 (IOException)

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

  • ファイルが存在しない場合 (FileNotFoundException)

  • ファイルの削除に必要なアクセス許可がユーザーにないか、またはファイルが読み取り専用の場合 (UnauthorizedAccessException)

  • 部分信頼の状況でユーザーに十分なアクセス許可がない場合 (SecurityException)

  • ユーザーが操作をキャンセルし、onUserCancel が UICancelOption.ThrowException に設定されている場合 (OperationCanceledException)

参照

処理手順

方法 : Visual Basic でファイルを削除する

方法 : Visual Basic でディレクトリを削除する

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

方法 : Visual Basic でファイルの絶対パスを確認する

参照

My.Computer.FileSystem オブジェクト

My.Computer.FileSystem.DeleteFile メソッド

RecycleOption 列挙型

UICancelOption 列挙型