java - 将 System.setout 重定向回标准输出

标签 java redirectstandardoutput

System.setout 重定向标准输出。例如,

FileOutputStream f = new FileOutputStream("file.txt");
    System.setOut(new PrintStream(f));

每个System.out.print 都会写入文件。我的问题是,完成后如何将输出设置回标准?

最佳答案

只需保存并恢复即可:

final PrintStream oldStdout = System.out;
System.setOut(newStdout);
// ...
System.setOut(oldStdout);

关于java - 将 System.setout 重定向回标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22646255/

相关文章:

python - Python2.7 中的 contextlib.redirect_stdout

c# - 使用 Process 类的 C# 应用程序中的 ffmpeg - 用户提示未显示在标准错误中

linux - Fortran 90 不写入标准输出?

java - 使用多个示例时如何在 Cucumber 功能中参数化用户名和密码

java - 是否有组合和标记接口(interface)的解决方法?

java - 无法将此字符串 "è°·æ­Œ��‹¼éŸ³è¾“��…¥æ³•"转换为java中可读的形式

c# - 生成进程时如何重定向标准输出

java - Hibernate PreUpdateEventListener 不起作用

java - 如何使用 Singleton 类来获得多个连接?

powershell - PowerShell 标准错误输出中的随机换行符