Java操作类

  1. DatagramSocket 此类表示用来发送和接收数据报包的套接字。
  2. 构造方法:
  3. 1.DatagramSocket() 构造数据报套接字并将其绑定到本地主机上任何可用的端口。
  4. 2.DatagramSocket(int port) 创建数据报套接字并将其绑定到本地主机上的指定端口。
  5. 成员方法:
  6. 1.send(DatagramPacket p) 从此套接字发送数据报包。
  7. 2.receive(DatagramPacket p) 从此套接字接收数据报包。
  8. 3.close() 关闭此数据报套接字。

数据报发送端

  1. public static void main(String[] args) throws IOException {
  2. //创建UDP套接字对象
  3. DatagramSocket ds = new DatagramSocket();
  4. String msg = "消息内容";
  5. InetAddress host = InetAddress.getByName("127.0.0.1");
  6. int port = 8192;
  7. //封装数据报,指定消息数据,主机IP地址,端口号
  8. DatagramPacket dp = new DatagramPacket(msg.getBytes(),0,msg.getBytes().length,host,port);
  9. ds.send(dp);//发送数据报
  10. ds.close();//关闭UDP套接字
  11. }

数据报接收端

  1. public static void main(String[] args) throws IOException {
  2. //创建UDP套接字对象,指定端口号
  3. DatagramSocket ds = new DatagramSocket(8192);
  4. //创建数据报接收客户端传过来的数据报
  5. byte[] bs = new byte[1024];
  6. DatagramPacket dp = new DatagramPacket(bs,0,bs.length);
  7. ds.receive(dp);//接收用户数据报
  8. System.out.println(new String(dp.getData(),0,dp.getLength()));
  9. }