我正在尝试从java文件中执行外部程序(.exe)。 到目前为止,这是我的代码:
try{
Process process = new ProcessBuilder(path).start();
InputStream is = process.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
}
catch(Exception e){e.printStackTrace();}
程序的初始输出显示在我的java程序的控制台窗口中,但遗憾的是它需要用户密码并输入。我已经尝试在互联网上实现了很多可能的解决方案,例如.inheritIO()或转发process-arguments中的命令,即Process process = new ProcessBuilder(path,“pw”,“/ c”)。start() ;但这不起作用。我不明白为什么输入流工作得很好,但任何类型的输出流似乎都不起作用。
答案 0 :(得分:0)
您可以按照以下方式: