通过java程序运行批处理文件

时间:2010-11-10 05:57:32

标签: java runtime

我想通过java程序运行批处理文件。批处理文件本身运行一个exe文件,其中一些文件名作为参数。我通过创建一个C程序并通过java运行该exe来尝试这个。有没有其他方法来运行批处理文件,该文件本身通过java运行exe。提前谢谢......

4 个答案:

答案 0 :(得分:2)

您可以使用Runtime.exec并将其传递给cmd /c /path/to/your/batch/script

从Java 1.5开始,您还可以使用ProcessBuilder

 Process p = new ProcessBuilder("cmd", "/c", "/path/to/batch/file").start();

ProcessBuilder的API文档详细说明了使用工作目录等更复杂的设置。

答案 1 :(得分:1)

public class CallingBatch {
public static void main(String[] args) {
Runtime run = Runtime.getRuntime();
try {
run.exec("cmd start /c C:/batfile.bat");
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("FINISHED");
}
}

希望这会对你有所帮助。

答案 2 :(得分:1)

要开始使用批处理文件,您需要花些时间来学习PROCESSBUILDER和运行时类。

程序:

class RunBatch
{
    public static void main(String[] arg){

        Runtime runtime = null;
        try{
            runtime.getRuntime.exec("CMD START /C D:/myBatchFile.bat");   
        }
        catch(RuntimeException e){ 
            e.printStackTrace();
        }
    }
}

答案 3 :(得分:0)

我在java中启动任何进程的首选方法是使用ProcessBuilder