2012-05-27 9 views
7

PrintStreamPrintWriter(またはその逆)に変換する方法はありますか?WriterOutputStreamはApache共通です。PrintStreamをPrintWriterに変換する

+0

PrintWriterでPrintStreamをラップできませんか? – nhahtdh

+0

あなたの目的は何ですか? –

+0

私の目的は、printstreamを印刷ライターに変換し、自分のコードにapache.jarを追加しないことです。 – MBZ

答えて

10

コンストラクタ使用し、PrintWriterPrintStreamを変換するには:PrintStreamはエンコーディングを持っていますが、PrintWriter(OutputStream out)を使用することを無視し、単にシステムのデフォルト文字セットを使用していますので、そのコンストラクタでPrintWriter(OutputStream out)

を、あなたは、間違ったエンコーディングを取得リスクが。 encodingは、(例えば)"UTF-8"またはCharsetのインスタンスすることができ

pw = new PrintWriter(new OutputStreamWriter(myPrintStream, encoding)); 

:あなたは、システムのデフォルトを使用しない場合は、別のフィールドまたは変数と使用中のエンコーディングを維持する必要があります。

+1

あなた'pw = new PrintWriter(System.out);を通して' System.out.println() 'をモックできます。 –

関連する問題