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