カテゴリ:.Net Framework
ファイルの読み込みをする際は以下のような手順を踏むと思います。
FileStream(スーパークラスはStream) → StreamReader → string
Streamは使いにくいところがあるので、StreamReaderを使っています。
わざわざ呼び出し側でこの手段を踏まずともいいように、便利なメソッドも存在します。
では、この逆はどうでしょうか。
ファイルの書き込みの話ではありません。読み込みも書き込みも逆どころか全く同じです。
私が言いたいのは矢印の逆のことです。
仮にStream → StreamReader/StreamWriter → stringが順当な流れだとするなら、それを遡っていくのです。
stringを元にStreamReaderのような操作を可能にするオブジェクトを作るには以前のエントリ「Str???Reader」で書いたStringReaderクラスを使います。
おおっ。
じゃぁ、stringからStreamのような操作を可能にするオブジェクトは作るには??
補足:
StringReader、StreamReaderはTextReaderをスーパークラスに持ちます。
なのでStreamReaderオブジェクトを受け取る際の引数の型は(StreamReader固有のメンバにアクセスしないなら)TextReaderにしておくといいです。
#今日(今週金曜)はブログ書かないみたいな事を言いましたが、何か。
TextReaderメンバ(System.IO)
http://msdn2.microsoft.com/ja-jp/library/system.io.textreader_members(VS.80).aspx