2011-11-19 13 views
0

私は愚かにこれを尋ねるが、コンソールから文字列を読み取るにはどうすればいいのですか?は入力されていますが、すでにコンソールに書き込まれていますコンソールから既に書き込まれたテキストを読む

たとえば、コンソールに回線を印刷すると、どうすればその事実を読むことができますか?私はこれが非典型的であることを知っています。

+1

このようにしないでください。必要に応じて、出力する前にコピーを保管してください。 – Brad

+0

合意。私はプログラムをテストしています。 –

+1

標準出力をリダイレクトしてファイルに移動します。 – Falmarri

答えて

2

ブラッドがコメントに指摘しているように、特定の特殊な状況を除いて、あなたはできません。正当な理由として、(標準出力または標準エラーを介して)コンソールに何らかのテキストを送信して印刷すると、実際にテキストが印刷されるという保証はありません。おそらく、ユーザーはその出力ストリームを/dev/nullにリダイレクトしています。この場合、テキストは正常に消えてしまいます。あるいは、テキストが見えなくなったかもしれません。

基本的に、出力のためにコンソールに送信されたものにアクセスすることは、これまで数えられません。必要な場合は、プログラムにコピーを保管してください。 別のプログラムをコンソールに送信しようとしている場合は、共有メモリ、ソケット、またはFIFOパイプのような別の配列を使用する必要があります。

0

System.inとSystem.outの両方を独自のストリームに置き換え、 System.inとSystem.outの間にパイプを作成しようとします。

私はそれがうまくいくかどうかは分かりません。

関連する問題