【发布时间】:2015-09-07 14:09:06
【问题描述】:
要在终端中执行SENNA,我使用以下命令:
senna.exe < input.txt > result.txt
现在我想在 java 程序中实现这一点。这是我目前的代码
ProcessBuilder builder = new ProcessBuilder("senna.exe");
builder.redirectErrorStream(true);
Process process = builder.start();
OutputStream stdin = process.getOutputStream();
InputStream stdout = process.getInputStream();
BufferedReader reader = new BufferedReader (new InputStreamReader(stdout));
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(stdin));
writer.write("This is a test sentence");;
writer.flush();
String line;
while ((line = reader.readLine ()) != null) {
System.out.println ("Stdout: " + line);
}
为了重定向输入、输出和错误流,我使用了来自this thread 的代码。问题是我收到以下错误消息:
致命错误:无法打开文件 hash/words.lst
我做错了吗?
【问题讨论】:
标签: java stream processbuilder