1:udp发送(这是广播局域网的形式,可以修改为指定IP地址)
@SneakyThrows
public static void main(String[] args) {
String message="中文";
DatagramSocket dgSocket = new DatagramSocket();
byte[] bytes = message.getBytes();
DatagramPacket dgPacket = new DatagramPacket(bytes, bytes.length, InetAddress.getByName("255.255.255.255"), 9000);
dgSocket.send(dgPacket);
dgSocket.close();
}
2:udp接收
@SneakyThrows
public static void main(String[] args) {
DatagramSocket dgSocket = new DatagramSocket(9000);
byte[] buffer = new byte[1024];
DatagramPacket dgPacket = new DatagramPacket(buffer, buffer.length);
while (true) {
dgSocket.receive(dgPacket);
String message = new String(dgPacket.getData(), 0, dgPacket.getLength());
System.out.println("接收到广播消息: " + message);
dgPacket.setLength(buffer.length);
}
}
注意:在Java中,我们可以使用DatagramSocket和DatagramPacket这两个类来进行UDP数据包的接收和发送操作。其中,DatagramSocket用于创建一个UDP套接字,并侦听指定的端口号;而DatagramPacket则表示一个UDP数据包,可以在网络上进行发送和接收。所以,如果你想要接收UDP数据包,可以使用DatagramSocket来创建一个UDP套接字,并在循环中调用receive()方法来接收数据包。如果你想要发送UDP数据包,则可以使用DatagramPacket类来构建数据包,并调用send()方法将其发送到目标地址