将打印流重定向到 TextArea
在 Java 中,将信息打印到控制台通常是使用 System.out 流完成的。然而,对于 GUI 应用程序,通常需要将此输出重定向到指定的组件,例如文本区域。
Approach
要实现此目的,您可以利用 Java 的打印流重定向功能。操作方法如下:
创建 TextArea 对象:
创建自定义 PrintStream:
重定向 System.out:
示例代码
以下示例代码演示了此方法(替换现有的 setOutputStream() 方法):
<code class="java">private void setOutputStream() { // Create a TextArea object TextArea textArea = new TextArea(); // Create a custom PrintStream to redirect output to the TextArea aPrintStream = new PrintStream(new ByteArrayOutputStream()) { @Override public void print(String s) { // Append the output to the TextArea textArea.append(s); } }; // Redirect System.out to the custom PrintStream System.setOut(aPrintStream); // Add the TextArea to a TabbedPane on the GUI jTabbedPane1.add("Main", textArea); }</code>
通过实现此技术,所有后续的 System.out 语句现在都将其输出打印到指定的 TextArea。
以上是如何在 Java 中将 System.out 输出重定向到 TextArea?的详细内容。更多信息请关注PHP中文网其他相关文章!