udp进行数据发送与接收
2023-12-31 17:34:30
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); // 监听端口号为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()方法将其发送到目标地址
文章来源:https://blog.csdn.net/qq_19891197/article/details/135317486
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!