Java 如何使用ProcessBuilder

Java 如何使用ProcessBuilder,java,process,builder,Java,Process,Builder,我试图使用ProcessBuilder使java与外部程序Prolog通信 我了解如何设置环境变量,并且已经这样做了 但我不明白我是如何与流程沟通的,我是如何向流程提供输入的,我是如何从流程中获得输出的,错误是如何处理的。我相信我需要使用一个输入流从prolog获取输出,一个输入流从prolog获取错误,一个输出流为prolog提供输入。有人能告诉我如何使用这些流与程序通信吗 这是我到目前为止告诉我的,如果我在某一点上想错了 ProcessBuilder pb = new ProcessBuil

我试图使用ProcessBuilder使java与外部程序Prolog通信

我了解如何设置环境变量,并且已经这样做了

但我不明白我是如何与流程沟通的,我是如何向流程提供输入的,我是如何从流程中获得输出的,错误是如何处理的。我相信我需要使用一个输入流从prolog获取输出,一个输入流从prolog获取错误,一个输出流为prolog提供输入。有人能告诉我如何使用这些流与程序通信吗

这是我到目前为止告诉我的,如果我在某一点上想错了

ProcessBuilder pb = new ProcessBuilder("gprolog");
//Enviroment variable to disable the gui for prolog
pb.environment().put("LINEDIT", "gui=no");
InputStream in = pb.getInputStream();
InputStream err = pb.getErrorStream();
OutputStream out = pb.getOutputStream();
pb.start();
在此之后,如何向prolog发出命令