如何在Java 中將控制台輸出捕獲為字符串
在Java 中,有時需要捕獲打印方法的輸出直接以字符串形式傳送到控制台。這對於動態生成內容、日誌記錄或測試非常有用。
將控制台輸出重新導向到字串的一種方法是利用 System.setOut 方法。透過配置 ByteArrayOutputStream 和 PrintStream,您可以即時捕獲輸出。
範例:
<code class="java">ByteArrayOutputStream baos = new ByteArrayOutputStream(); PrintStream ps = new PrintStream(baos); // Save the old System.out for later restoration PrintStream old = System.out; // Redirect System.out to your PrintStream System.setOut(ps); // Print to your custom stream System.out.println("Captured Output"); // Restore the original System.out System.out.flush(); System.setOut(old); // Retrieve the captured output as a string String output = baos.toString();</code>
此程式碼將捕獲「Captured」的輸出輸出」到輸出字串中。然後,您可以根據需要處理或操作輸出。
以上是如何在 Java 中將控制台輸出捕獲為字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!