2010-11-10 199 views
1

我想通過java程序運行批處理文件。批處理文件本身以一些文件名作爲參數運行一個exe文件。我通過創建一個C程序並通過java運行該exe文件來嘗試這一點。是否有任何其他方式來運行批處理文件,它本身通過java運行一個exe文件。在此先感謝...通過java程序運行批處理文件

+0

可能重複http://stackoverflow.com/questions/615948/how-do-i-run-從我的Java應用程序的批處理文件) – Grodriguez 2010-11-10 06:33:56

回答

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"); 
} 
} 

希望這會幫助你。

+0

你試過嗎?它工作嗎? – 2010-11-10 06:08:07

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

要開始與你必須花費一些時間來學習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(); 
     } 
    } 
} 
的[?我如何運行從我的Java應用程序的批處理文件(