首页 > 其他分享 >UDP协议类_DatagramSocket

UDP协议类_DatagramSocket

时间:2023-03-15 14:47:11浏览次数:37  
标签:DatagramSocket 协议 UDP bytes new 接收数据 ds dp

public class ClientDemo {

    public static void main(String[] args) throws IOException {
        // DatagramSocket客户端发送数据的步骤

        // 1:创建DatagramSocket客户端对象
        DatagramSocket ds = new DatagramSocket();
        // 2:创建数据并打包(DatagramPacket)
        String s = "你好啊。。。";
        byte[] bytes = s.getBytes();
        InetAddress address = InetAddress.getByName("127.0.0.1");
        int port = 10000;
        DatagramPacket dp = new DatagramPacket(bytes, bytes.length, address, port);
        // 3:调用DatagramSocket客户端对象的方法发送数据
        System.out.println("发送数据前");
        ds.send(dp);
        System.out.println("发送数据后");
        // 4:释放资源
        ds.close();

    }

}
public class ServiceDemo {

    public static void main(String[] args) throws IOException {
        // DatagramSocket接收端接收数据的步骤

        // 1、创建DatagramSocket接收端对象 new DatagramSocket(10000)表示从10000端口接收数据,如果不写参数,默认从随机端口接收数据。
        DatagramSocket ds = new DatagramSocket(10000);

        // 2、创建一个用于接收数据的箱子
        byte[] bytes = new byte[1024];
        DatagramPacket dp = new DatagramPacket(bytes, bytes.length);

        // 3、调用DatagramSocket接收端对象的方法接收数据并放入箱子
        System.out.println("接收数据前");
        ds.receive(dp);
        System.out.println("接收数据后");

        // 4、解析箱子(数据包),并把数据展示
        byte[] data = dp.getData();
        int length = dp.getLength();
        String s = new String(data, 0, length);
        System.out.println(s);
        // 5、释放资源
        ds.close();

    }

}

 

标签:DatagramSocket,协议,UDP,bytes,new,接收数据,ds,dp
From: https://www.cnblogs.com/weiduaini/p/17218441.html

相关文章

  • http协议心得
        HTTP诞生之初主要是应用于WEB端内容获取,那时候内容还不像现在这样丰富,排版也没那么精美,用户交互的场景几乎没有。对于这种简单的获取网页内容的场景,HTTP表现得......
  • http协议心得
    支持客户/服务器模式。简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTT......
  • contrack TCP协议状态转换
    索引和TCP状态值三维数组tcp_conntracks定义了TCP连接的状态转换表,第一维表示方向,0和1分别表示原和反方向;第二维表示6个报文标志,如下tcp_bit_set所示;第三位表示当前的......
  • mDNS协议初识
    mDNS协议初识TRANSLATEwithxEnglishArabicHebrewPolishBulgarianHindiPortugueseCatalanHmongDawRomanianChineseSimplifiedHungarian......
  • netty自定义私有协议解析
    netty提供了高扩展,高可用的方案,让我们开发者节省了很多开发成本。但是netty关于协议解析这块还需要手动的读取buffer,麻烦不说,还不能摸鱼了。后来在网上找到一套可以像j......
  • 关于java对接物联网设备自定义协议的安全性,以及长链接场景下需要注意的事项
    目前从事于物联网行业。共享充电宝。负责通讯相关。当前设备在线量约50W台。记录一下走得弯路。方便大家借鉴。文笔不太好,希望大家轻喷。本文主要是从以下几个方......
  • JAVA设备对接中,字节协议序列化的简单方式
    一般来说,java在和设备进行对接时都会使用私有协议或自定义协议,在序列化这些协议时会相当的繁琐,而且比较注重细节。 基于之前的对接经验,我整理并完成了一套序列化框架。......
  • JAVA物联网私有协议,自定义协议开发
    在当代物联网行业中,由于隐私和安全问题,很多的公司选择使用自定义的私有二进制协议。在C语言中,由于有结构体的加持,对象和字节数组转换起来就特别简单;但在java中,在没有原生支......
  • 协议
    协议:计算机网络中,连接和通信的规则被称为网络通信协议。UDP协议:用户数据报协议(UserDatagramProtocol)UDP是面向无连接通信协议。速度快,有大小限制,一次最多64Kb......
  • SIP协议在VoIP中的应用
    一、什么是SIP协议SIP协议又名会话发起协议,它是一个基于文本的应用层控制协议,用于创建、修改和释放一个或多个参与者的会话。SIP协议是应VoIP语音电话的产生而产生的,S......