发送消息
package com.zzz.net;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
public class UdpClientDemo01 {
public static void main(String[] args) throws Exception {
DatagramSocket socket = new DatagramSocket(); //建立一个socket
String msg = "你好呀!"; //建个包,包含数据、起始、长度、目的IP、端口号
DatagramPacket packet = new DatagramPacket(msg.getBytes(),0,msg.getBytes().length, InetAddress.getByName("localhost"),9090);
socket.send(packet); //发送包
socket.close(); //关闭流
}
}
接收消息
package com.zzz.net;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class UdpServerDemo01 {
public static void main(String[] args) throws Exception {
DatagramSocket socket = new DatagramSocket(9090); //建立一个socket
byte[] buffer = new byte[1024]; //建个空包,用于接收
DatagramPacket packet = new DatagramPacket(buffer, 0, buffer.length);
socket.receive(packet); //阻塞接收
System.out.println(packet.getAddress().getHostAddress());
System.out.println(new String(packet.getData(),0, packet.getLength()));
socket.close(); //关闭流
}
}
原文:https://www.cnblogs.com/zzzstudy/p/14613948.html