实现客户端循环向服务器端发送消息,服务器端循环接收的功能。

客户端:

读取文本文件,并将文本文件里的每一行文字发送给客户端

public static void main(String[] args) throws Exception{log.info("------------开始-----------");BufferedReader bis = new BufferedReader(new FileReader("英语.txt"));DatagramSocket ss = new DatagramSocket(1001);           // 客户端的端口byte bytes[] = new byte[1024];String s;while ((s = bis.readLine()) != null){bytes = s.getBytes();// 这里需要写服务器端的主机名或域名或ip地址和服务器端的端口,表示发给对应的服务器端DatagramPacket date = new DatagramPacket(bytes,0,bytes.length, InetAddress.getByName("DESKTOP-2021TKJ"),1002);ss.send(date);}/*用于接收服务器端在客户端发送完数据以后还在待机的状态当服务器端接收到"quit"时会自动结束程序*/byte bys[] = "quit".getBytes();ss.send(new DatagramPacket(bys,0,bys.length, InetAddress.getByName("DESKTOP-2021TKJ"),1002));log.info("数据发送成功");ss.close();log.info("------------结束-----------");

服务器端:

public static void main(String[] args) throws Exception{log.info("------------开始-----------");log.info("");DatagramSocket ss = new DatagramSocket(1002);               // 服务器端的端口byte bytes[] = new byte[1024];                          // 用来接收从客户端发送过来的数据// 使用一个长度为bytes.length的字节数组存储从客户端发送过来的数据DatagramPacket date = new DatagramPacket(bytes,0,bytes.length);// 接收客户端发送过来的数据while (true){ss.receive(date);String str = new String(bytes,0, date.getLength());// 当客户端发送过来的数据是quit时表示发送数据完成,结束接收数据if(str.equals("quit")){break;}System.out.println(str);}// 将数据写到缓冲区里
//        String str = new String(date.getData(),0, date.getLength());// 将接收到的数据保存到字节数组里log.info("");log.info("------------结束-----------");}

运行结果:

udp通信2--多发多收相关推荐

  1. 2022Java学习笔记八十八(网络编程:UDP通信,一发一收,多发多收消息接收实现)

    2022Java学习笔记七十八(网络编程:UDP通信,一发一收,多发多收消息接收实现) 一.快速入门 DatagramPacket:数据包对象 实例代码 定义发送端 package com.zcl.d ...

  2. UDP通信多发多收(案例)和广播组播

    使用UDP通信方式开发接收端和发送端(模拟视频弹幕系统) 分析:发送端可以一直发送消息   接收端可以不断的接收多个发送端的消息展示     发送端输入exit则结束发送端程序 UDP的接收端为什么可 ...

  3. 暑期JAVA学习(41.1)TCP通信——多发多收消息

    TCP通信--多发多收消息 一.使用TCP通信实现:多发多收消息案例 (1)需求 (2)具体要求 (3)具体实现 (4)总结 ①本案例实现了多发多收,那么是否可以同时接收多个客户端的消息? ②本次多发 ...

  4. TCP通信多发多收,和接收多个客户端消息

    需求使用TCP通信的方式实现:多发多收消息 具体要求 可以使用死循环控制服务端收完消息继续等待接收下一个消息 客户端也可以使用死循环等待用户不断的输入消息 客户端一旦输入exit,则关闭客户端程序,并 ...

  5. 树莓派TCP传输协议(socket通信) 一发一收与多发多收

    项目场景: 一个物联网系统中,硬件与Web后端的通信肯定是必不可少的.笔者在每个项目中都会自己模拟发送端与接收端来实现树莓派收到的各模块数据能通过TCP协议上传给电脑.笔者在这里提供自己一直都有在用的 ...

  6. 网络通信、UDP通信、TCP通信、BS架构模拟、URL了解

    网络编程 网络通信 网络通信三要素之IP地址(了解) JAVA对IP地址的操作(InetAddress类) 网络通信三要素之端口号(了解) 网络通信三要素之协议(了解) UDP通信 UDP通信之广播和 ...

  7. C语言网络编程:UDP通信实现

    文章目录 UDP的特点: UDP的用途 UDP编程模型 UDP通信代码实现 UDP的特点: udp 协议是一种无链接的不可靠传输协议,且UDP每次发送到分组数据大小都是固定的,它的主要特点如下: 不建 ...

  8. 网络编程 UDP通信的过程 TCP通信过程 多线程文件上传

    网络概述 协议 在网络之间传出数据时需要按照指定的标准来传输,标准中规定了数据的格式.大小.传输的方式.传输速率.形成统一规范->按照规范开发的代码->协议(应用层.传输层.网络层.链路层 ...

  9. 【Android开发—智能家居系列】(四):UDP通信发送指令

    思路回顾 [1]手机连接WIFI模块 [2]UDP通信对WIFI模块发送指令,以和WIFI模块保持连接状态 [3]UDP通信对WIFI模块发送指令,让其搜索可用的无线网,返回WIFI列表 [4]发送指 ...

最新文章

  1. 多线程中的ManualResetEvent
  2. python学习: 优秀Python学习资源收集汇总--转
  3. 除了HTML、CSS与JS,现在WASM也是标准Web语言
  4. 做骨龄检测_小柚熊:骨龄测试最佳年龄
  5. java中readline函数_自定义BufferedReader中read和readLine方法
  6. 《Programming in Lua 3》读书笔记(九)
  7. SqlServer2005海量数据存储过程分页(上)
  8. 分布式光纤传感技术(DTS/BOTDA/BOTDR/光栅/OTDR)近几年会有较快的发展(本人预测)
  9. 咸鱼ZTMR实例—PS2手柄控制板载LED
  10. 全球链界科技发展大会_科技界的女性-过去,现在和未来
  11. Jzoj4699 Password
  12. android lut格式文件下载,一键调色?教你用Lut直接调出电影色调(内含下载)
  13. 语c语言描写,语c动作描写
  14. 华为ENSP(VRP)命令行
  15. Dell服务器出错代码和含义
  16. 从键盘接收一百分制成绩python_python第一模块练习
  17. Ubuntu下C语言程序编写与运行
  18. 小白linux bash 学习前奏二 vi操作
  19. matlab自带滤波器函数
  20. S5700交换机MAC地址绑定问题

热门文章

  1. 前置授权类资质:许可证牌照
  2. window创建l2tp
  3. 华为云服务器扩容挂盘失败fstab文件配置错误无法开机及进入单用户模式
  4. 三菱FX系列PLC以太网连接西门子wincc软件
  5. 新锐任务宝推广渠道推荐
  6. “斜杠青年”多巴胺,这次把手伸进了梦里
  7. ROC曲线,曲线下的面积(Aera Under Curve,AUC),P-R曲线
  8. 计算机保密dss是啥,什么是DSS?
  9. 什么是知识图谱(Knowledge Graph)(上)
  10. nginx之allow、deny