如何将执行命令获得的输出字符串打印到标准输出?
所以Runtime.getRuntime().exec()
会返回一个Process
,通过调用getOutputStream()
,我可以获得对象如下,但如何将其内容显示到stdout?
OutputStream out = Runtime.getRuntime().exec("ls").getOutputStream();
谢谢
最佳答案
我相信您正在尝试从进程中获取输出,为此您应该获取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);
当您想要写入/发送一些输出到 Process 时,您将获得 OutputStream
。
关于java - 显示 Runtime.exec() 返回的进程的输出流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15995969/