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

更新 : 2007 年 11 月

My.Computer.FileSystem オブジェクトの DeleteDirectory メソッドを使用すると、ディレクトリを削除できます。指定できるオプションには、ディレクトリの内容を削除するかどうか、削除したディレクトリをごみ箱に送るかどうか、および削除の進行状況を表示するかどうかがあります。

空の場合のみディレクトリを削除するには

  • DeleteDirectory メソッドを使用してディレクトリを削除します。その際、onDirectoryNotEmpty を False に設定します。この例では、OldDirectory という名前のディレクトリを、空の場合のみ削除します。

    My.Computer.FileSystem.DeleteDirectory("C:\OldDirectory", _
    FileIO.DeleteDirectoryOption.ThrowIfDirectoryNonEmpty)
    

ディレクトリを削除してごみ箱に送るには

  • DeleteDirectory メソッドを使用してディレクトリを削除します。その際、recycle を RecycleOption.SendToRecycleBin に設定します。この例では、操作の進行状況を表示しながら、OldDirectory という名前のディレクトリおよびそのすべての内容を削除してごみ箱に送ります。

    My.Computer.FileSystem.DeleteDirectory("C:\OldDirectory", FileIO.UIOption.AllDialogs, FileIO.RecycleOption.SendToRecycleBin)
    

堅牢性の高いプログラム

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

  • パスが長さが 0 の文字列であるか、形式に誤りがあるか、空白だけが含まれているか、または無効な文字 (ワイルドカード文字を含む) が含まれている (ArgumentException)。

  • パスがデバイス パスである (\\.\ で開始されている) (ArgumentException)。

  • パスが Nothing である (ArgumentNullException)。

  • ディレクトリが存在しないか、またはファイルである (DirectoryNotFoundException)。

  • ディレクトリまたはサブディレクトリを削除するためのアクセス許可がユーザーにない (IOException)。

  • ディレクトリまたはサブディレクトリ内のファイルが使用中である (IOException)。

  • ファイル名またはディレクトリ名にコロン (:) が含まれている (NotSupportedException)。

  • OnUserCancel が ThrowException に設定されており、ユーザーが操作をキャンセルした (OperationCanceledException)。

  • OnUserCancel が ThrowException に設定されており、かつディレクトリを削除できなかった (OperationCanceledException)。

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

  • showUI が AllDialogs に設定されており、かつユーザーに必要なアクセス許可がない (UnauthorizedAccessException)。

参照

処理手順

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

参照

UICancelOption 列挙型

My.Computer.FileSystem.DeleteDirectory メソッド

RecycleOption 列挙型

UIOption 列挙型

DeleteDirectoryOption 列挙型