import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class UDPTestServer {
public static void main(String[] args) {
DatagramSocket datagramSocket = null;
try{
datagramSocket= new DatagramSocket(8888);
//创建数据缓冲区
byte[] bytes = new byte[1024];
//创建数据报包对象
DatagramPacket datagramPacket = new DatagramPacket(bytes,bytes.length);
//等待接收客户端发送的数据
datagramSocket.receive(datagramPacket);
String str=new String(datagramPacket.getData(),0,datagramPacket.getLength());
System.out.println(str);
}catch (Exception e){
e.printStackTrace();
}finally {
if(datagramSocket!=null){
datagramSocket.close();
}
}
}
}
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import java.nio.charset.StandardCharsets;
public class UDPSocketClient {
public static void main(String[] args) {
DatagramSocket datagramSocket = null;
try{
//消息需要进行转换,转换成字节数据类型
byte[] bytes="我爱学习".getBytes(StandardCharsets.UTF_8);
//创建数据报包包装对象 DatagramPacket
DatagramPacket datagramPacket = new DatagramPacket(bytes,bytes.length,new InetSocketAddress("127.0.0.1",9999));
//创建数据发送对象 DatagramSocket,需要指定消息的发送端口
datagramSocket = new DatagramSocket(8888);
//发送消息
datagramSocket.send(datagramPacket);
}catch (Exception e){
e.printStackTrace();
}finally {
if(datagramSocket!=null){
datagramSocket.close();
}
}
}
}