[.NET クラスライブラリ Tips][Directory] 指定した条件に合致するファイル名を取得する

スポンサーリンク

本記事の概要

この記事では、Directory クラスを使用して、指定した条件に合致するファイル名を取得する方法について説明します。

公式サイト情報はコチラを参照してください。

 

指定した条件に合致するファイル名を取得するには?

指定した条件に合致するファイル名を取得するには GetFiles メソッドを使用します。

構文は以下に示す通り複数あります。

public static string[] GetFiles (string path);
public static string[] GetFiles (string path, string searchPattern);
public static string[] GetFiles (string path, string searchPattern, 
    System.IO.EnumerationOptions enumerationOptions);
public static string[] GetFiles (string path, string searchPattern, 
    System.IO.SearchOption searchOption);

指定したディレクトリのファイルを取得する

以下の構文を使用することで、指定したディレクトリのファイルを取得することができます。

public static string[] GetFiles (string path);

以下の例では、C:¥Work 直下にあるファイルを取得して表示します。

using System.IO;

var targetPath = @"C:\Work";

foreach(var filename in Directory.GetFiles(targetPath))
{
    Console.WriteLine(filename);
}

実行例を以下に示します。

実行例

実行例

 

指定ディレクトリ内の指定検索パターンに一致するファイルを取得する

以下の構文を使用すると、指定ディレクトリ内の指定検索パターンに一致するファイルを取得することができます。

public static string[] GetFiles (string path, string searchPattern);

以下の例では、C:¥Work 配下にある、拡張子が *.bmp のファイルを取得して表示します。

using System.IO;

var targetPath = @"C:\Work";

foreach(var filename in Directory.GetFiles(targetPath, "*.bmp"))
{
    Console.WriteLine(filename);
}
実行例

実行例

 

指定ディレクトリ内を再帰的に検索してファイルを取得する

以下の構文を使用すると、指定ディレクトリ内の指定検索パターンに一致するファイルを取得できるのですが、このとき第3引数に SearchOption.AllDirectories を指定すると ディレクトリを再起的検索してファイルを取得します。

public static string[] GetFiles (string path, string searchPattern, 
    System.IO.EnumerationOptions enumerationOptions);

以下は C:¥Work 配下を再帰的に検索して、拡張子が *.bmp のファイルを取得します。

using System.IO;

var targetPath = @"C:\Work";

foreach(var filename in Directory.GetFiles(targetPath, "*.bmp", 
    SearchOption.AllDirectories))
{
    Console.WriteLine(filename);
}
実行例

実行例

 

.NET クラスライブラリ Tips

これまでに紹介した .NET クラスライブラリ Tips はコチラから参照できます。

Please follow and like us:

コメント

タイトルとURLをコピーしました