[Tips][ファイル操作] テキストファイルを読み込む(2) ReadLineメソッドの利用

StreamReaderクラスを使用して、ファイルの中身を1行ずつ読み込むにはReadLineメソッドを使用します。

ReadLineメソッドは、データがない行(ファイルの終端など)で実行するとエラーが発生します。このため、一般的にはPeekメソッドを使用して読み込むデータがあるかどうかを確認してからReadLineメソッドを実行するようにします。Peekメソッドは、次に読み込む文字がある場合は0以上の数を返します。

下記は、ReadLineメソッドを使用して1行ずつ読み込みを行う例です。

VBの例

'Shift-JisでStreamReaderを作成する
Dim enc As System.Text.Encoding = System.Text.Encoding.GetEncoding("Shift_Jis")
Dim sr As New IO.StreamReader("C:\Work\Test.txt", enc)

'次に読み込む文字があるか?
Do While sr.Peek > -1
    Dim strLine As String
    strLine = sr.ReadLine()  '1行読み込む
Loop

'StreamReaderを閉じる
sr.Close()

C#の例

// Shift-JisでStreamReaderを作成する
System.Text.Encoding enc = System.Text.Encoding.GetEncoding("Shift_Jis");
System.IO.StreamReader sr = new System.IO.StreamReader(@"C:\Work\Test.txt", enc);

// 次に読み込む文字があるか?
while ( sr.Peek() > -1)
{
// 1行読み込む
string strLine = sr.ReadLine();
}

// StreamReaderを閉じる
sr.Close();

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.