给我一个能完成ping程序设计与实现的java代码
时间: 2023-12-17 12:04:47 浏览: 119
以下是使用Java实现基于Socket的Ping程序的示例代码:
```java
import java.net.*;
import java.io.*;
public class Ping {
public static void main(String[] args) throws Exception {
String host = "example.com"; // 要ping的主机名或IP地址
int port = 80; // 要ping的端口号
int timeout = 2000; // 超时时间,单位为毫秒
// 创建Socket对象
Socket socket = new Socket();
try {
// 设置超时时间
socket.setSoTimeout(timeout);
// 连接主机
socket.connect(new InetSocketAddress(host, port));
// 输出连接成功信息
System.out.println("Ping " + host + " [" + socket.getInetAddress().getHostAddress() + "] with port " + port + ": Connected");
} catch (IOException e) {
// 输出连接失败信息
System.out.println("Ping " + host + " [" + socket.getInetAddress().getHostAddress() + "] with port " + port + ": Failed");
}
// 关闭Socket
socket.close();
}
}
```
在上面的代码中,我们使用Java的Socket类来创建一个TCP连接,并设置超时时间。如果连接成功,则输出连接成功的信息;否则输出连接失败的信息。
你可以根据需要修改主机名、端口号和超时时间等参数来对不同的主机进行Ping测试。
需要注意的是,这个示例代码仅能用于测试TCP连接,如果你需要测试ICMP连接,则需要使用Java的原始套接字(Raw Socket)来实现。
阅读全文