java - 调用可执行文件并传递参数

标签 java exe processbuilder

我正在研究一种从 Java 调用 exe 并传入特定参数的机制。我该怎么办?

Process process = new ProcessBuilder("C:\\PathToExe\\MyExe.exe").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);
}

前面的代码有效。 但我无法传入参数。 MyExe.exe 接受参数。另一个问题是当 PathToExe 有空格时。 ProcessBuilder 似乎不起作用。例如:

C:\\User\\My applications\\MyExe.exe

谢谢。

最佳答案

在构造函数本身中传递您的参数。

Process process = new ProcessBuilder("C:\\PathToExe\\MyExe.exe","param1","param2").start();

关于java - 调用可执行文件并传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5604698/

相关文章:

java - Tomcat 7 偶然 NoClassDefFoundError cxf BaseUrlHelper

Java - 如何使用 Excelsior JET 构建 exe?

python - 从 python 脚本启动一个新进程,然后从同一个脚本中终止它

java - 用于启动 Java 应用程序的微型 exe

Java - 如何为方法提供数组

java - maxLength 属性不适用于 EditText

java - 在 Java 代码上运行 GCC 预编译器

java - 使用 OneToMany 将对象从 JSON 保存到数据库

java - 从 Java 执行但不是从命令行执行时出现 NoSuchFieldError

java - 如何使用 ProcessBuilder 获取 wvdial 的输出?