C#を利用して、テキストファイルを読み込む必要があり使用した方法を記録しておきます。
目次
1.ファイル読み込みついて
2.例外の回避
3.まとめ
1.ファイル読み込みついて
C#でファイル読み込みを行うには、「StreamReader」クラスを使用します。
StreamReaderクラスには、①ファイルを一度に全て読み込む方法と、②1行ずつ読み込む方法があります。今回①の方法を使用したので②は割愛します。
①一度に全て読み込む方法
使用するメソッドは「ReadToEnd」メソッドを使用します。
StreamReaderクラスの使用方法としては、コンストラクタの第1引数に"読み込むファイルパス"、第2引数に文字コードを選択します。
StreamReader sr = new StreamReader(
"text.txt", Encoding.GetEncoding("Shift_JIS"));
string text = sr.ReadToEnd();
text.txt(文字コードS-JIS)ファイルをReadToEndメソッドで読み込んでいます。ReadToEndメソッドはファイルの読み込みが終わったらCloseメソッドでファイルを閉じる必要があるので注意です。
2.例外の回避
ファイルを読み込む場合、読み込むファイルが存在しない場合に例外が発生する為、それを回避する為にExistsメソッドを使ってファイルのチェックをしてから読み込む必要があります。
if (File.Exists(filePath))
{
StreamReader sr = new StreamReader(filePath, Encoding.GetEncoding("Shift_JIS"));
string str = sr.ReadToEnd();
sr.Close();
Console.WriteLine(str);
}
else
{
Console.WriteLine("ファイルが存在しない");
}
Console.ReadKey();
}
3.まとめ
ファイルを読み込む場面は何度も発生してくると思います。
ログチェックプログラムを作成する際に使用しました。
他にも汎用的で簡潔な方法があるかもしれませんでの、発見したらまた投稿します。