我正在寻找一种重定向Process / ProcessBuilder的输出方式。我知道在Java 7中可以这样做:
ProcessBuilder builder = new ProcessBuilder(command);
builder.redirectOutput();
Process process = builder.start();
但我需要Java 5/6的相同功能...非常感谢任何帮助。
我正在寻找一种重定向Process / ProcessBuilder的输出方式。我知道在Java 7中可以这样做:
ProcessBuilder builder = new ProcessBuilder(command);
builder.redirectOutput();
Process process = builder.start();
但我需要Java 5/6的相同功能...非常感谢任何帮助。
针对在Windows 7上使用Java 6的cmd进程的示例代码:
ProcessBuilder processBuilder = new ProcessBuilder( "cmd" );
Process process = processBuilder.start();
OutputStream stream = process.getOutputStream();
getOutputStream()
方法的Javadoc说明如下:"获取子进程的输出流。将输出到该流的内容管道传输到由此Process对象表示的进程的标准输入流中。"
如果要重定向进程的输出,可以使用上面代码中定义的stream
对象。您可以将其写入控制台等。
p.getOutputStream()
返回p
的标准输入,而p.getInputStream()
返回p
的标准输出。请参见 Process。 - ford