有效执行外部程序
当尝试从 Java 应用程序执行外部程序时,确保程序正确运行和正确运行至关重要。做出适当的反应。在您的例子中,您的目标是执行“program.exe”可执行文件并向其传递两个参数。虽然您的代码没有任何错误通知,但很明显该程序没有执行预期的操作。
提供的解决方案利用“ProcessBuilder”的功能来启动外部程序的执行。此类允许您指定完整的命令及其参数,并支持读取执行程序生成的输出。
优化的代码:
<code class="java">Process process = new ProcessBuilder("C:\PathToExe\program.exe", "param1", "param2").start(); InputStream is = process.getInputStream(); InputStreamReader isr = new InputStreamReader(is); BufferedReader br = new BufferedReader(isr); String line; System.out.printf("Output of running %s is:", Arrays.toString(args)); while ((line = br.readLine()) != null) { System.out.println(line); }</code>
此修改后的代码确保外部程序通过调用“ProcessBuilder”的“start()”方法来执行。然后,它通过使用“getInputStream”、“InputStreamReader”和“BufferedReader”来收集并显示执行程序产生的任何输出。
以上是如何在 Java 中执行外部程序并读取其输出?的详细内容。更多信息请关注PHP中文网其他相关文章!