Команда ping в консоли windows на Java

DeBasser

Необходимо выполнить команду ping и получить в консоль результат. Пример кода:

public class test {
    public static void main(String[] args) throws IOException {
        Process softID;
        Process soft = Runtime.getRuntime().exec("cmd && ping localhost");
        BufferedReader br = new BufferedReader(new InputStreamReader(soft.getInputStream(), Charset.forName("CP866")));
        String line;

        while (true) {
            line = br.readLine();
            if (line == null) {
                break;
            }
            System.out.println(line);

        }
    }
}

В результате получаю только шапку консоли, результата пинга нет.

Microsoft Windows [Version 10.0.15063]
(c) Корпорация Майкрософт (Microsoft Corporation), 2017. Все права защищены.
1 ответ

DeBasser

Process ping = Runtime.getRuntime().exec("ping localhost");
BufferedReader br = new BufferedReader(new InputStreamReader(ping.getInputStream(), Charset.forName("CP866")));

String line;
while ((line = br.readLine()) != null) {
    System.out.println(line);
}

br.close();

licensed under cc by-sa 3.0 with attribution.