2014-03-03 57 views
0

我試圖執行.exe文件(說abc.exe),我會從命令行執行與參數來執行。exe文件:無法在Java

C:\....pathtoExe>abc.exe /m param1 

的代碼是:

   String cmd[]={"bin/ocr/abc.exe","/m",param1}; 
       Process p = Runtime.getRuntime().exec(cmd); 
       p.waitFor(); 

請注意,bin/ocr/abc.exe是exe文件的相對路徑,是正確的。 Hoewver當我得到輸入流並嘗試讀取它時,我沒有得到所需的輸出(Infact我根本沒有得到任何輸出,因爲inputStream什麼都不返回)。 我也有用下面的代碼在相同的目錄(run.bat中)的批處理文件:

C:\...pathtobat>run.bat param1 

那麼,如何執行以上:

abc.exe /m %1 > abc_out.txt 

這可以從命令提示符被執行從命令提示符采取參數的批處理文件?我的主要目標是從java中正確運行.exe文件並獲取從.exe文件返回的輸出。

回答

0

這應該工作:

String cmd[]= { "abc.exe", "/c", param1 }; 
Process p = Runtime.getRuntime().exec(cmd); 
p.waitFor();