我想将java进程输出重定向到父java进程的标准输出.
使用ProcessBuilder类如下:
public static void main(String[] args) {
ProcessBuilder processBuilder = new ProcessBuilder("cmd");
processBuilder.directory(new File("C:"));
processBuilder.redirectErrorStream(true); // redirect error stream to output stream
processBuilder.redirectOutput(ProcessBuilder.Redirect.INHERIT);
}
Run Code Online (Sandbox Code Playgroud)
我原以为"cmd"的输出,如:
Microsoft Windows [版本6.1.7601]版权所有(c)2009 Microsoft Corporation.Tousdroitsréservés.
显示在用于运行java程序的DOS控制台中.但是在DOS控制台中根本没有显示任何内容.
在讨论的其他主题中,我看到了使用BufferedReader类的解决方案:但是在这里我希望过程的输出直接显示在标准输出中,而不使用任何BufferedReader或"while read loop".可能吗?
谢谢.