解決済み: テキスト ファイルを読み取って文字列をリストします

最終更新: 09/11/2023

テキスト ファイルを理解して処理することは、どのような形式の開発においても重要な作業です。 したがって、テキスト ファイルを文字列のリストに読み込むことは、C# プログラミングでよく見られるシナリオです。 この操作は、ユーザー データの管理、構成ファイルの解析、単純なデータベース操作の処理など、数え切れないほどの状況で役立ちます。 説明全体を通じて、ファイル処理操作を実行するために、いくつかの基本的な C# ライブラリ、つまり System.IO ライブラリを利用します。

C#にはテキストファイル操作を処理するための様々なメソッドが用意されています。しかし、ここでは主にStreamReaderクラスとFileクラスを活用する方法に焦点を当てます。

StreamReader クラスと ReadToEnd メソッド

StreamReaderクラスは、C# の System.IO ライブラリの一部です。このクラスを使用すると、アプリケーションは特定のエンコーディングでバイトストリームから文字を読み取ることができます。この機能をReadToEndメソッドと組み合わせることで、テキストファイルの末尾に達するまで、1 行ずつ読み込むことができます。

System.IOを使用します。
...
リスト 行 = 新しいリスト();
using (StreamReader sr = new StreamReader(“filename.txt”))
{
文字列行;
while ((line = sr.ReadLine()) != null)
{
行.Add(行);
}
}

C# のリストとそのユーティリティ

同じ型の複数のデータ項目、あるいは今回のケースのようにテキストファイルの複数行を扱う場合、Listは非常に効率的で汎用性の高いデータ構造です。Listは、インデックスによってアクセスできる、厳密に型指定されたオブジェクトのリストを表します。

上記のコード スニペットで示されているように、リストには、項目の追加、項目の削除、項目の検索などの一般的な操作を簡単に実行できるメソッドがいくつか用意されています。

File.ReadAllLines メソッド

テキストファイルを文字列リストに読み込むもう一つの簡単な方法は、 System.IO のFileクラスのReadAllLinesメソッドを使用することです。このメソッドはファイルのすべての行を読み込み、ファイルのテキストコンテンツ全体を文字列の配列として返します。必要に応じて、この配列を簡単に文字列リストに変換できます。

System.IOを使用します。
...
リスト 行 = 新しいリスト(File.ReadAllLines(“ファイル名.txt”));

上記の説明を通じて、C# の組み込み機能を使用してテキスト ファイルを文字列のリストに読み込むさまざまな方法を検討しました。 堅牢な StreamReader クラスの使用から便利な File クラスの使用まで、System.IO ライブラリの機能を活用することで、C# プログラミングにおける一般的なファイル操作タスクがどのように合理化および簡素化されるかを確認しました。

関連記事: