• Java Socket UDP编程


     1 package com;
     2 
     3 import java.io.IOException;
     4 import java.net.*;
     5 
     6 /**
     7  * UDP Client
     8  *
     9  * Created by Administrator on 2018/5/3.
    10  */
    11 public class Client {
    12 
    13     public static void main(String[] args) throws IOException {
    14 
    15         /**
    16          * send message
    17          */
    18         InetAddress inetAddress = InetAddress.getByName("localhost");
    19         byte[] data = "name:tom, pwd:123".getBytes();
    20         DatagramPacket datagramPacket = new DatagramPacket(data, data.length, inetAddress, 8800);
    21         DatagramSocket datagramSocket = new DatagramSocket();
    22         datagramSocket.send(datagramPacket);
    23 
    24         /**
    25          * receive message
    26          */
    27         byte[] data2 = new byte[1024];
    28         DatagramPacket datagramPacket1 = new DatagramPacket(data2, data2.length);
    29         datagramSocket.receive(datagramPacket1);
    30         String info = new String(data2, 0, data2.length);
    31         System.out.println("I am Client, Server say:" + info);
    32 
    33         /**
    34          * close resource
    35          */
    36         datagramSocket.close();
    37     }
    38 }
     1 package com;
     2 
     3 import java.io.IOException;
     4 import java.net.DatagramPacket;
     5 import java.net.DatagramSocket;
     6 import java.net.InetAddress;
     7 
     8 /**
     9  * UDP Server
    10  *
    11  * Created by Administrator on 2018/5/3.
    12  */
    13 public class Server {
    14 
    15     public static void main(String[] args) throws IOException {
    16 
    17         DatagramSocket datagramSocket = new DatagramSocket(8800);
    18 
    19         /**
    20          * receive message
    21          */
    22         byte[] bytes = new byte[1024];
    23         DatagramPacket datagramPacket = new DatagramPacket(bytes, bytes.length);
    24         datagramSocket.receive(datagramPacket);
    25         String info = new String(bytes, 0, datagramPacket.getLength());
    26         System.out.println("I am Server, Client say: " + info);
    27 
    28         /**
    29          * send message
    30          */
    31         InetAddress inetAddress = datagramPacket.getAddress();
    32         int port = datagramPacket.getPort();
    33         byte[] data = "welcome!".getBytes();
    34         DatagramPacket datagramPacket1 = new DatagramPacket(data, data.length, inetAddress, port);
    35         datagramSocket.send(datagramPacket1);
    36 
    37         /**
    38          * close resource
    39          */
    40         datagramSocket.close();
    41     }
    42 }
  • 相关阅读:
    一个用于录制用户输入操作并实时回放的小工具
    Ubuntu 14.04 下安装wiznote客户端
    lombok @EqualsAndHashCode 注解的影响
    初始化数据库和导入数据
    com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver的区别 serverTimezone设定
    fastjson如何指定字段不序列化
    Mybatis 查询tinyint(1)的数据库字段时会自动转换成boolean类型
    Maven中settings.xml的配置项说明
    logback的使用和logback.xml详解
    解决Eureka Server不踢出已关停的节点的问题
  • 原文地址:https://www.cnblogs.com/jiangyi-uestc/p/8988476.html
Copyright © 2020-2023  润新知