ストリームについて(Java)


あるライブラリに、
setOutputStream(OutputStream out)
というメソッドがあり、サンプルコードでは、
setOutputStream(System.out);
という使い方をしています。

システムからの出力をSystem.out(コンソールにつながっているストリーム(という理解なのですが))に表示するようにしている、のだと思います。実際、コンソールに出力が表示されます。

この時、システムからの出力を直接コンソールに表示させるのではなく、いったんStringなどに格納して、私が処理を加えたいのですがそういったことは可能でしょうか?

よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2009/07/01 10:04:42
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:b-wind No.1

回答回数3344ベストアンサー獲得回数440

ポイント60pt

OutputStream (Java Platform SE 6)

OutputStream を継承したクラスを作成し、write(int b) メソッドを実装すればよいです。


該当のライブラリには自作クラスを渡すようにし、自作クラスでは System.out 等を(コンストラクタで受け取るなどして)

関連づければ、システム的には透過的に扱えます。

id:rapuntuleru

回答ありがとうございます。

うーん、、知識不足のせいで、まだちょっとよく分かりません。

>System.out 等を(コンストラクタで受け取るなどして)

>関連づければ

というのは、具体的にどのようにすればよいのでしょうか?

2009/06/30 17:29:18

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません