【发布时间】:2019-07-31 17:08:53
【问题描述】:
来自此链接“Writing to the OutputStream of Java Process/ProcessBuilder as pipe”并研究我没有找到一种方法来指定从 getOutputStream() 写入进程输出的路径。
BufferedReader br = new BufferedReader(new FileReader(new File("commands.txt")));
String[] input = br.readLine().split(" ");
String cmd = input[0] + " " + input[1] + " " + input[3];
System.out.println(cmd);
Process process = Runtime.getRuntime().exec(new String[]{"bash","-c", cmd});
BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));
OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(input[3]));
byte[] buf = new byte[1024];
int len;
while ( (len = in.read()) > 0) {
// out.write();
}
在代码中,exec 运行一个将两个文件的结果连接起来的进程,现在我想将结果保存在一个新文件中。但是我找不到方法,因为进程中的 getOutPutStream 对象只有一种方法 write 与构造函数,该构造函数将 int[] 作为参数。提前感谢您的帮助。
【问题讨论】:
标签: java process fileoutputstream