ディレクトリ(フォルダー)の存在を確認する [C#]

C#でディレクトリ(フォルダー)が存在するかどうか(参照できるかどうか)を確認する方法について紹介します。
ディレクトリの存在確認には、System.IO名前空間のDirectoryInfoクラスのExistsプロパティを使用するか、DirectoryクラスのExists静的メソッドを使用します。

DirectoryInfoクラスのExistsプロパティで存在確認

DirectoryInfoクラスのExistsプロパティの構文は次のようになります。

DirectoryInfo.Existsプロパティの使用例

以下にExistsプロパティの使用例を示します。

上記の例では以下の記事「ディレクトリ(フォルダー)を作成する」で作成するディレクトリのC:\Test\NewDirディレクトリが存在するかどうかを確認しています。

ディレクトリ(フォルダー)を作成する [C#]
C#でディレクトリ(フォルダー)を作成する方法について紹介します。 ディレクトリを作成する際は、System.IO名前空間のDirecto...

Existsプロパティは、ディレクトリが存在する場合はtrueを返し、存在しない場合はfalseを返します。

DirectoryクラスのExists静的メソッドで存在確認

DirectoryクラスのExists静的メソッドの構文は次のようになります。

DirectoryクラスのExists静的メソッドには引数に存在を確認するディレクトリのパスを指定します。

Directory.Exists静的メソッドの使用例

以下にExists静的メソッドの使用例を示します。

DirectoryInfoクラスのExistsプロパティ、およびDirectoryクラスのExists静的メソッドは、指定したディレクトリが存在するかどうかを判断しようとした際に、エラーが発生した場合もfalseを返します。

サンプルプログラム

Windowsフォームアプリケーションでのプログラムの実装例を記載します。

ユーザーインターフェース

フォームのインターフェースは次のようにします。

ディレクトリ存在確認サンプルフォームデザイン

ソースコード

サンプルプログラムのフォームには次のようなソースコードを記述します。

サンプルの実行

作成したプログラムを実行します。

ディレクトリ存在確認サンプルフォーム

[button1]がDirectoryInfoクラスのExistsプロパティでDirectoryInfoオブジェクトのディレクトリが存在するかどうかを確認します。
[button2]がDirectoryクラスのExists静的メソッドで指定したパスのディレクトリが存在するかどうかを確認します。

DドライブにWork > ExistsDirectorySample > TestDirの順にディレクトリを作成します。

ディレクトリ存在確認用のフォルダーを作成
パスのテキストボックスに「D:\Work\ExistsDirectorySample\TestDir」を入力します。

ディレクトリ存在確認サンプルフォームのパスを入力

[button1]をクリックします。

ディレクトリ存在確認結果フォルダーありのメッセージ

ディレクトリが存在しているのでExistsプロパティがtrueになります。

[button2]をクリックします。

ディレクトリ存在確認結果フォルダーありのメッセージ

同様にディレクトリが存在しているのでExists静的メソッドはtrueを返します。

パスのテキストボックスに存在しないディレクトリのパスを入力します。

ディレクトリ存在確認サンプルフォームで存在しないパスを入力
ここではTestDirディレクトリ内の存在しないNotFoundディレクトリのパスを入力しています。

[button1]をクリックします。

ディレクトリ存在確認結果フォルダーなしのメッセージ

ディレクトリが存在していないのでExistsプロパティはfalseになります。

[button2]をクリックします。

ディレクトリ存在確認結果フォルダーなしのメッセージ

同様にディレクトリが存在していないのでExists静的メソッドはfalseを返します。