java - 如何获取网络 Activity 连接列表(进程名称、ID、PID、stat、TCP 或 UDP...)并将它们写入 java 中的 XML 文件

标签 java sockets network-programming

我想获取所有网络 Activity 连接,及其进程名称、PID 号、tcp 或 udp、stat(监听、连接..)本地 IP 地址远程 ID 的详细信息他们的地址, (类似于在 linux bash 上运行命令:netstat f) 然后将它们写入 XML 文件, 有人知道我应该怎么做吗? 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);
}
 }
}

希望对你有帮助

关于java - 如何获取网络 Activity 连接列表(进程名称、ID、PID、stat、TCP 或 UDP...)并将它们写入 java 中的 XML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15202103/

相关文章:

java - mongodb,保存后截断日期时间中的毫秒

java - 绘制 JPanel/JComponent

linux - 两个进程共享同一个 UDP 端口发送

c - 如何检查套接字上是否有数据可用?

c - "Replay"tcpdump 文件

java - Spring boot data.sql没有初始化Postgresql中的数据

java - 哪种设计模式允许基于运行时类型抽象功能?

linux - 在服务器端写N次时是否应该读N次

java - 下载网站上的所有pdf文件

c - 接收特定消息的socket编程C