2014-04-28 96 views
-1
不會開放

讓我們假設我有一個監聽器按鈕「.BAT」文件中的JAVA

public class Visualizer1 implements ActionListener { 
     public void actionPerformed(ActionEvent a) { 
      try { 
       Runtime rt2 = Runtime.getRuntime(); 
       Process p = rt2.exec("visualizer/vis1.exe"); 
       InputStream in = p.getInputStream(); 
       OutputStream out = p.getOutputStream(); 
       InputStream err = p.getErrorStream(); 

       p.destroy(); 
      } catch (Exception exc) {/* handle exception */ 
      } 

的‘vis1.exe’將執行,沒有任何問題,它會打開 ,但如果我有一個應用程序帶有「.bat」擴展名,就像它是(vis1.bat)一樣,它不會打開。 注:.bat擴展名是可執行文件

+0

閱讀:http://stackoverflow.com/questions/615948/how -do-i-run-a-batch-file-from-my-java-application – Obicere

+1

嘗試通過「c:\ windows \ system32 \ cmd.exe your.bat」或者「%comspec%your.bat」啓動,其中%comspec%是一個環境變量,應該包含用於cmd.exe的路徑。蝙蝠執行 – Dodge

+0

請爲我編碼。我的「vis1」文件位於名爲「home」的文件夾中 –

回答

1

試試這個..

Runtime.getRuntime().exec("cmd /c start vis1.bat"); 
0

一個.BAT心不是一個可執行文件。 「.BAT(簡稱爲」批處理「)文件是包含一系列Windows命令的純文本文件.EXE(」可執行文件「的簡寫)文件是一個二進制文件,其中包含更復雜的可執行文件二進制代碼。」

http://www.fileinfo.com/help/bat_vs_exe_files