我有一个文件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