Java:写入Scala输出流

时间:2013-04-11 07:20:44

标签: java scala stream buffer stdout

我正在开发一个项目,要求我使用Process类运行scala实例。为此,我执行以下代码:

Process process = RunTime.getRunTime().exec("<path to scala binary> <scala file>");

此调用为我提供了正在执行的scala程序的进程代表。我能够访问进程的输入流并从进程接收输入:

BufferedReader stdin = new BufferedReader(new InputStreamReader(process.getInputStream()));
stdin.readLine();

我尝试运行的scala程序涉及一个扫描程序,它接收输入并将其打印出来。当我尝试将BufferedWriter注册到从process.getOutputStream()生成的OutputStreamWriter时,然后使用以下命令写入该流:

stdout.write("Hello");

scala程序没有收到此输入,我想知道:为什么会发生这种情况?

1 个答案:

答案 0 :(得分:2)

原来我忘记冲洗流了。