UDP 是User Datagram Protocol的简称,一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
发送端分析:
1.创建发送端Socket对象
2.创建数据并打包
3.发送数据
接收端分析:
1.创建接收端Socket对象
2.接收数据
3.解析数据
4.将接收到的数据打印到控制台
发送端代码:
public class UDPSendTest { public static void main(String[] args) throws Exception { //创建发送端Socket对象 DatagramSocket ds = new DatagramSocket(); //创建数据并打包 String s = "My name is happywindman"; byte[] bytes = s.getBytes(); int length = s.length(); InetAddress ip = InetAddress.getByName("192.168.3.100");//根据自己主机的ip地址或者主机名 int port = 10086; DatagramPacket dp = new DatagramPacket(bytes,length,ip,port); //发送数据 ds.send(dp); //释放资源 ds.close(); } }
接收端代码:
public class UDPReceiveTest { public static void main(String[] args) throws Exception { //创建接收端Socket对象 DatagramSocket ds = new DatagramSocket(10086); //接收数据 byte[] bytes = new byte[1024]; int length = bytes.length; DatagramPacket dp = new DatagramPacket(bytes, length); ds.receive(dp); //解析数据 InetAddress address = dp.getAddress(); byte[] data = dp.getData(); int len = dp.getLength(); //输出数据 System.out.println(address); System.out.println(new String(data,0,len)); } }
先运行接收端代码,然后再运行发送端代码就可以看到发送的数据被打印到控制台了