Linq ファイルの読み込み書き込み

C# Linq 指定フォルダにあるディレクトリ、ファイルを列挙する1番便利な方法 Linqを使用するためにEnumerateDirectories、EnumerateFilesを使用しよう

今回のテーマ

 

こんにちは、かっぱちゃんです。

今回のテーマは指定フォルダにあるディレクトリとファイルを列挙する方法を紹介します。

今回紹介する方法は、列挙した内容に対して、Linqを使用する方法を紹介します。

それでは、ソースコードを見ていきましょう。

列挙するディレクトリとファイル

DドライブにExampleフォルダを作成し、下記のようにディレクトリとファイルを置きました。

 D:Example
1------------1.txt
2------------2.txt
3------------3.txt
Example1-----Example1.txt
Example2-----Example2.txt
Example3-----Example3.txt
Example4-----Example4.txt
Example5-----Example5.txt
Example6-----Example6.txt

画像も載せておきます。各ディレクトリ配下に同じ名前のテキストが置いてあります。

ディレクトリ一覧の取得方法

まずはディレクトリの一覧を取得していきます。ソースコードをみていきましょう。

 出力結果
D:\Example\1
D:\Example\2
D:\Example\3
D:\Example\Example1
D:\Example\Example2
D:\Example\Example3
D:\Example\Example4
D:\Example\Example5
D:\Example\Example6

簡単に取得することができましたね。EnumerateDirectoriesメソッドを使用することで便利なところはLinqを自由に使用できることです。

早速、Linqを使用した例もみていきます。ディレクトリ名が5以上のディレクトリのみ取得してみます。

 出力結果
D:\Example\Example1
D:\Example\Example2
D:\Example\Example3
D:\Example\Example4
D:\Example\Example5
D:\Example\Example6

想定通りにディレクトリ名が5以上のディレクトリのみ取得できましたね。

Whereメソッドについてはこちらの記事を見てください。

こちらもCHECK

C# Linqの使い方。Select、Whereを解説。

今回のテーマContents1 今回のテーマ2 Linqを使う場面3 Linqメソッドの解説の流れ4 Selectの使い方5 Whereの使い方6 まとめ こんばんは、かっぱちゃんです。 今回は下記の ...

続きを見る

KappaChan
次はファイルを取得するかっぱ!!

ファイル一覧の取得方法

今度はファイルの一覧を取得していきましょう。ディレクトリとほぼ同じでEnumerateFilsメソッドを使用するだけです。

 出力結果
D:\Example\1\1.txt
D:\Example\2\2.txt
D:\Example\3\3.txt
D:\Example\Example1\Example1.txt
D:\Example\Example2\Example2.txt
D:\Example\Example3\Example3.txt
D:\Example\Example4\Example4.txt
D:\Example\Example5\Example5.txt
D:\Example\Example6\Example6.txt

問題なく取得できましたね。EnumerateFilesメソッドでは、

第1引数に取得対象とするファイルの拡張子、

第2引数に取得対象となるディレクトリを指定しています。AllDirectoriesを指定することで、Exampleフォルダ内の全てのディレクトリを対象としています。

Linqも使用してみましょう。Takeメソッドで前から4番目までのファイル名を取得してみます。

 出力結果
D:\Example\1\1.txt
D:\Example\2\2.txt
D:\Example\3\3.txt
D:\Example\Example1\Example1.txt

Takeメソッドについてはこちらの記事に書いてあります。

こちらもCHECK

C# Linqの使い方。Take、Skip、TakeWhile、SkipWhileメソッドを解説。

今回のテーマContents1 今回のテーマ2 Take、Skip、TakeWhile、SkipWhileについて2.1 Take2.2 Skip2.3 TakeWhile2.4 SkipWhile3 ...

続きを見る

問題なくファイル名を取得することができましたね。

まとめ

今回はディレクトリ、ファイルを取得するために下記の2つのメソッドを紹介しました。

今回紹介したメソッド

  • EnumerateDirectories
  • EnumerateFiles

ディレクトリとファイルを取得する方法は他にもたくさんありますが、

この方法ならLinqを自由に使用できるのでオススメです。

この記事をきっかけにファイルを取得する時には検討してみてください。

KappaChan
最後まで見てくれてありがとうかっぱ!!

-Linq, ファイルの読み込み書き込み

X