//UDP發送
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
public class UdpSend {
public static void main(String args[]) throws Exception{
//發送數據的套接字變量
DatagramSocket ds = null;
//UDP的數據包變量
DatagramPacket dp = null;
//實例化UDP的套接字,端口號為9999,UDP套接字綁定的端口
ds = new DatagramSocket(9999);
//需要發送的數據
String str = "sunplusedu";
//指定需要發送的數據內容,數據長度,目的IP和目的端口號
dp = new DatagramPacket(str.getBytes(),str.length(),InetAddress.getByName("172.20.223.151"),8000);
//發送數據
ds.send(dp);
//關閉
ds.close();
}
}
//UDP接收
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class UdpReceive {
public static void main(String args[]) throws Exception{
//聲明UDP相關的變量
DatagramSocket ds = null;
DatagramPacket dp = null;
//定義接收空間大小
byte data[] = new byte[1024];
//實例化套接字,綁定8000端口
ds = new DatagramSocket(8000);
//實例化套接字數據存放空間
dp = new DatagramPacket(data,data.length);
System.out.println("waiting the client~~~");
//將UDP收到的消息存放在dp當中
ds.receive(dp);
//打印獲取到的消息
System.out.println(new String(dp.getData()).trim());
ds.close();
}
}