しかし、それはStreamクラスを単体で使う場合に限ったことで、.NET FrameworkにはStreamクラスを使った数値・文字列の読み書きを簡単に行えるようにする便利なユーティリティクラスが用意されています。 具体的には、StreamReader・StreamWriterやBinaryReader・BinaryWriterといったクラスをStreamクラスと組み合わせて使うことにより、数値・文字列など構造化されたデータをより簡単に読み書きできるようになります。
FileStreamとStreamReaderを使ってファイルから文字列を読み込む
using System;
using System.IO;
using System.Text;
class Sample {
static void Main()
{
// ファイルsample.txtを開き、読み取りアクセスを行うためのFileStreamを作成する
using (var stream = new FileStream("sample.txt", FileMode.Open, FileAccess.Read)) {
// テキストエンコーディングにUTF-8を用いてstreamの読み込みを行うStreamReaderを作成する
var reader = new StreamReader(stream, Encoding.UTF8);
// streamから文字列を一行分読み込み、表示する
var line = reader.ReadLine();
Console.WriteLine(line);
}
}
}