我想获得所有网络活动连接,以及它们的进程名,PID number, tcp or udp, stat (listen, connect..) local Ip address
和remote ID address
的详细信息,(类似于在linux bash上运行命令:netstat f
)然后写信给XML file
,有人知道我该怎么做吗?哪些函数在Java中执行这些任务。
谢谢你的帮助。
没有java库/APi可以做到这一点。但你可以通过调用操作系统服务来实现例如在Windows中:进口java.io.BufferedReader;进口java.io.InputStreamReader;
public class TCPConnections
{
public static void main(String[] args){
try{
ProcessBuilder pb = new ProcessBuilder("netstat","-a","-n","-o");
Process process = pb.start();
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while((line=br.readLine())!=null){
System.out.println(line);
}
br.close();
}catch(Exception e){
throw new RuntimeException(e);
}
}
}
希望有所帮助