К сожалению, нет эквивалента netstat, доступного непосредственно в java.
Вы можете использовать API процесса, чтобы порождать новый процесс и проверять вывод.
Я буду использовать пример из следующий q / a: { ссылка }
Я изменил его на вызов netstat
. После запуска процесса вам также нужно будет прочитать вывод и проанализировать его.
Runtime rt = Runtime.getRuntime();
String[] commands = {"netstat", ""};
Process proc = rt.exec(commands);
BufferedReader stdInput = new BufferedReader(new
InputStreamReader(proc.getInputStream()));
BufferedReader stdError = new BufferedReader(new
InputStreamReader(proc.getErrorStream()));
// Read the output from the command
System.out.println("Here is the standard output of the command:\n");
String s = null;
while ((s = stdInput.readLine()) != null) {
System.out.println(s);
}
// Read any errors from the attempted command
System.out.println("Here is the standard error of the command (if any):\n");
while ((s = stdError.readLine()) != null) {
System.out.println(s);
}
Источник: { ссылка }