2012-04-24 4 views
2

У меня есть файл generateK.bat, который генерирует ключ случайным образом.Java - Запустить и использовать .bat-файл

У меня есть два вопроса:

  1. Как я могу запустить .bat файл в Java среде? Я видел только инструкцию по редактированию .bat-файла, но не запускал его.
  2. Я хочу использовать ключ в своей программе. Как я могу использовать вывод в java?

Спасибо.

ответ

4

Я хотел бы использовать 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

1
  1. Как я могу запустить .bat файл в java среде? Я видел только инструкцию по редактированию .bat-файла, но не запускал его.

Используйте следующий фрагмент кода для запуска командного файла.

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

Эстрагон уже отправил ответ на .

0

Из Java Runtime.getRuntime().exec("cmd /c start generateK.bat");

0

Пожалуйста, посмотрите на эту статью, которая четко объясняет каждый шаг чтения и записи в файл летучей мыши. Java CMD Line Program

Смежные вопросы