在我的程序中,我正在使用Processbuilder运行命令。
该命令实际上是执行python脚本。无论脚本打印如何,我只是通过打印输入流将其显示在控制台中。
问题是,在python脚本中有一个if条件,条件除了是或否以继续脚本。
我不知道如何输入Yes或No in-process builder。
请帮我解决问题。
答案 0 :(得分:0)
最简单的方法是使用inheritIO()
。
使用此选项,您可以将java控制台用作python程序的stdio。您的Java程序将运行用于Java和python程序的python代码和控制台,因此您可以通过Java控制台进行输入。
ProcessBuilder test = new ProcessBuilder("python", PATH_OF_YOUR_PY_PROGRAM);
test.inheritIO();
Process process = test.start();
process.waitFor();
注意:inheritIO()
使用控制台进行输入和输出,因此通过激活此选项,整个python输出也将在Java控制台中打印。