の戻り値の型がVOIDの1つの関数があり、コンソールに直接出力します。コンソール出力をJavaの文字列にリダイレクト
しかし、私はそれに取り組むことができるように文字列で出力が必要です。
戻り値の型で関数を変更することはできませんが、出力を文字列にリダイレクトする必要があります。
どのようにJAVAでリダイレクトできますか?関数はSystem.out
に印刷されている場合は、あなたが使用して、その出力をキャプチャすることができ
は、文字列に標準出力をリダイレクトに関する多くの質問がありますが、彼らは唯一のユーザーから取られた入力と、いくつかの機能のない出力...
終了したら、System.out.flush()を呼び出してから、System.outを通常の(または、もっと正確には)System.outに戻してください。 @Ernestがそれを彼のコードに追加したのが分かります。 – user949300
また、この方法(これを同期させることで解決できる)ではなく、stdoutに出力する他のコードでも、スレッドの問題が発生することを忘れないでください。 'baos.toString()'は簡単に '' Foofohello worldofoo 'になります。 '' – yshavit
@Ernest:ありがとうございました... – SRK