Запустите файл bat из Java - PullRequest
0 голосов
/ 12 июня 2018

Мне нужно запустить файл bat из Java.это код, который я использовал для этого.

public static void main(String[] args) {
    try {
        ProcessBuilder pb = new ProcessBuilder("C:\\test\\test.bat");
        Process p = pb.start();
        BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
        String line = null;
        while ((line = reader.readLine()) != null)
        {
            System.out.println(line);
        }      
        p.waitFor();
    } catch (IOException ex) {
        Logger.getLogger(JavaApplication1.class.getName()).log(Level.SEVERE, null, ex);
    } catch (InterruptedException ex) {
        Logger.getLogger(JavaApplication1.class.getName()).log(Level.SEVERE, null, ex);
    } 
}

этот код работает нормально.Но если я добавлю код ожидания для программы bat, подождите и никогда не закончите.Это файл bat.

@echo off
echo harshana
echo harshana
echo harshana
choice /d y /t 5 > nul
echo Times up! Here I go again...
echo harshana10

когда я запускаю этот файл bat в cmd, он повторяет 3 раза 'harshana' и ждет 5 секунд.затем повторить остальное.но когда я запускаю файл летучей мыши из кода Java, это «раз!Здесь я снова ... », и« harshana10 »не печатается, и код Java не выходит (ожидание).Как я могу решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...