我有一個文件generateK.bat
,它可以隨機生成密鑰。Java - 運行並使用.bat文件
我有兩個問題:
- 如何運行
.bat
文件中的java環境?我只看到編輯.bat文件的說明,但沒有運行它。 - 我想在我的程序中使用該鍵。我怎樣才能在java中使用輸出?
謝謝。
我有一個文件generateK.bat
,它可以隨機生成密鑰。Java - 運行並使用.bat文件
我有兩個問題:
.bat
文件中的java環境?我只看到編輯.bat文件的說明,但沒有運行它。謝謝。
我會使用的Runtime.exec給exec外部程序: http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Runtime.html
這樣您就可以用,你可以讀/寫輸入和輸出流的過程。
代碼如下所示:
public static void main(String Argv[]) {
try {
String ls_str;
Process ls_proc = Runtime.getRuntime().exec("pathtoyourbat/generateK.bat");
// get its output (your input) stream
DataInputStream ls_in = new DataInputStream(
ls_proc.getInputStream());
try {
while ((ls_str = ls_in.readLine()) != null) {
System.out.println(ls_str);
}
} catch (IOException e) {
System.exit(0);
}
} catch (IOException e1) {
System.err.println(e1);
System.exit(1);
}
System.exit(0);
}
=>http://www.ensta-paristech.fr/~diam/java/online/io/javazine.html
但是也有很多教程關於Java裏面運行外部應用程序
- 我怎樣才能運行的.bat在Java環境中的文件?我只看到編輯.bat文件的說明,但沒有運行它。
使用下面的一段代碼來運行您的批處理文件。
Runtime.getRuntime().exec("cmd /c start abc.bat");
愛斯特拉岡已經貼出答案。
從Java,Runtime.getRuntime().exec("cmd /c start generateK.bat");
請看看這篇文章清楚地說明了閱讀每一個步驟和寫入bat文件。 Java CMD Line Program