2011-07-12 20 views
9

この2つのTextWriter/Reader派生型StringWriter/ReaderとStreamReader/Readerの使い方の違いとはまったく異なります。 私はStreamから読み取るStream*クラスStreamWriter/ReaderとStringWriter/Readerllの相違点

+0

質問が正確であることを明確にすることができれば役に立ちます。例えばあなたは何をする必要があります...はい、そのことが問題であれば、データを扱うのが楽になります。 – shelleybutterfly

+0

hm ..あなたはすでにあなた自身の質問に答えたと思います。あなたの混乱は何ですか? – Tigran

+0

名前はその使用法を示唆しているかもしれません。 – Magnus

答えて

23
  • たTextWriter /リーダーを持つ抽象クラスです。これは、文字ベースのデータをデータソースに/から読み書きするための抽象化を提供します。

  • StreamWriter/Readerは、書き込み可能/可読のStreamをデータソースとして使用する具象実装です。ストリームはバイトベースのデータの書き込み/読み出しの抽象化であるため、文字とバイトの間の変換にはEncodingインスタンスが必要です。

  • にStringWriter /リーダーは、データソースとしてStringBuilder/stringを使用する具体的な実装です。

+3

私はそれを持っています... StreamWriter/Readerは、基本的なストリームに/から文字を読み書きしています...ストリームはバイトで動作するので、この型で実装されたエンコード機能は自動的に文字をバイトに変換しますそれは使いやすさの一種です... StringReader/Writerはストリームではなく文字列データに対して実行するのに対して... – kHAzaDOOm

12

...それらを使用して、我々はファイルストリームを使用してdireclty作業としてバイト大騒ぎを避け、ストリーム内の文字ベースのデータを簡単に扱うことができることを知っています。
のクラスは、Stringから読み取られ(そしてStringBuilderに書き込む)。

TextReaderを受け取るメソッドを記述し、それをStreamReaderまたはStringReaderと呼んで、ストリームまたは文字列から読み込むことができます。

関連する問題