1

如何将执行命令获得的输出字符串打印到标准输出?

所以Runtime.getRuntime().exec()会返回 a Process,通过调用getOutputStream(),我可以获得如下的对象,但是如何将它的内容显示到 stdout 呢?

OutputStream out = Runtime.getRuntime().exec("ls").getOutputStream();

谢谢

4

2 回答 2

2

我相信您正在尝试从流程中获取输出,为此您应该获得InputStream.

InputStream is = Runtime.getRuntime().exec("ls").getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader buff = new BufferedReader (isr);

String line;
while((line = buff.readLine()) != null)
    System.out.print(line);

OutputStream当你想写/发送一些输出到进程时,你会得到。

于 2013-04-14T05:06:24.883 回答
0

将流转换为字符串,如Get an OutputStream into a String中所述,只需使用 Sysrem.out.print()

于 2013-04-14T05:06:34.933 回答