テキストファイルを読み込む(StreamReader)

ファイル/フォルダ

テキストファイルを読み込む方法を紹介します。

テキストファイルの中身の文字を取得する方法

基本的なファイル読込を紹介します。
パスを指定してテキストファイルの中身を取得しています。
文字コードのデフォルトは「UTF-8」になります。

string input_text = "";
string input_path = "";

//ファイル保存ダイアログによる出力の取得
using (OpenFileDialog dlg = new OpenFileDialog())
{
    dlg.Title = "読み込むファイルを設定してください。";
    dlg.Filter = "Text File(*.txt)|*.txt";

    if (dlg.ShowDialog() != DialogResult.OK)
    {
        return;
    }

    input_path = dlg.FileName;
}

//メッセージボックスで出力確認
if (MessageBox.Show("テキストファイルを読込みます。よろしいですか?", "ファイル読込", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
{
    return;
}

//ファイル出力処理
using (System.IO.StreamReader sr = new System.IO.StreamReader(input_path))
{
    input_text = sr.ReadToEnd();
}

this.textBox1.Text = input_text;

//完了メッセージ
MessageBox.Show("取得が完了しました。");

サンプル

読込対象ファイルの中身です。

読み込んだ結果

文字コードが「UTF-8」以外のテキストを読み込むと全角文字が文字化けします。

Shift_Jisで出力する

文字コードを「シフトJIS」で読み込みます。

using (System.IO.StreamReader sr = new System.IO.StreamReader(input_path, System.Text.Encoding.GetEncoding("shift_jis")))
{
    input_text = sr.ReadToEnd();
}

サンプル

まとめ

今回はテキストの読込を行いました。他にもバイナリやXMLでの読込などがあります。ファイル読込は、業務でもよく使う部類なので覚えておいて損はありません。

この記事が皆様のお役に立てれば幸いです。

コメント

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