如何在JAVA中执行exe命令?

时间:2011-10-31 10:11:52

标签: java command exe

我有一个exe文件,它以文件名作为输入。 当我像以下命令执行它时:

xyz.exe c:\input.txt c:\ouput.txt

这一切都按预期工作。

但是如何执行这个是java?

这是我使用过的,我没有在文件中获得输出:

String[] str = {"c:/input.txt","c:/output.txt"};
Process p = rt.exec("c:/xyz.exe",str); 

3 个答案:

答案 0 :(得分:2)

您正在使用以下方法:

public Process exec(String command,
                    String[] envp)

其中envp是一个(quote“字符串数组,其每个元素的格式为name = value的环境变量设置,如果子进程应该继承环境,则为null目前的流程。“

请改为尝试:

String[] command = {"c:/xyz.exe", "c:/input.txt", "c:/output.txt"}; 
Process p = Runtime.getRuntime().exec(command);
// ...

另请阅读本文,解释Runtime.exec(...)http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html

的缺陷

答案 1 :(得分:0)

使用Runtime.exec或Processbuilder API

答案 2 :(得分:0)