UDP:数据报传输

1、接收端

public class Udps { //接收端 

public static void main(String[] args) throws IOException { 

//1.准备接收数据报的箱子

byte[] by = new byte[1024];

DatagramPacket dp = new DatagramPacket(by,by.length); 

//2创建套接字,绑定到相应的端口去接收数据报
DatagramSocket ds = new DatagramSocket(8803); //3.接收数据报
ds.receive(dp); //4.处理操作接收到的数据4属性
System.out.println(new String(dp.getData(),0,dp.getLength())+dp.getPort()+dp.getSocketAddress()); //5.准备反馈的信息,及基本属性
String replay = "我是服务器,欢迎登录!";
SocketAddress ia = dp.getSocketAddress(); //6将要发送的数据装箱
DatagramPacket dpr = new DatagramPacket(replay.getBytes(),replay.getBytes().length,ia); //7.发送信息
ds.send(dpr);
//8.关闭套接字
ds.close(); } }

2、发送端

public class Udpc { //发送端

public static void main(String[] args) throws IOException {

//1准备要发送的数据内容
String send = "我是客户端,我请求登录!"; //2创建装箱包
DatagramPacket dp = new DatagramPacket(send.getBytes(),send.getBytes().length,InetAddress.getLocalHost(),8803); //3创建套接字端口发送数据报
DatagramSocket ds = new DatagramSocket(); //4.发送数据
ds.send(dp); //5准备接受返回的信息
byte[] by = new byte[1024]; //6.准备接受的装箱的包
DatagramPacket dpr =new DatagramPacket(by,by.length); //7接受信息
ds.receive(dpr); //8处理接受到的信息4属性
System.out.println(new String(dpr.getData(),0,dpr.getLength())+dpr.getPort()+dpr.getSocketAddress()); //关闭套接字
ds.close(); } }

网络编程—代码—UDP数据报传输的更多相关文章

  1. Linux网络编程:UDP Socket编程范例

    TCP协议提供的是一种可靠的,复杂的,面向连接的数据流(SOCK_STREAM)传输服务,它通过三段式握手过程建立连接.TCP有一种"重传确认"机制,即接收端收到数据后要发出一个肯 ...

  2. java:网络编程(UDP (DatagramSocket和DatagramPacket)正则表达式)

    java:网络编程(UDP (DatagramSocket和DatagramPacket)正则表达式) * TCP* 特点:面向连接,点对点的通信,效率较低,但安全可靠* UDP:用户数据报协议,类似 ...

  3. 网络编程 单纯UDP通信

    网络编程 单纯UDP通信 1,UDP发送端 2,UDP接收端 UDP发送端: #include <stdio.h> #include <unistd.h> #include & ...

  4. TCP/IP协议网络编程以及UDP和TCP之传输协议

    1.什么是TCP/IP协议? 网络编程协议有很多,目前应用最广泛的是TCP/IP协议(Transmission Control Protocal/Internet Protoal 传输控制协议/英特网 ...

  5. linux网络环境下socket套接字编程(UDP文件传输)

    今天我们来介绍一下在linux网络环境下使用socket套接字实现两个进程下文件的上传,下载,和退出操作! 在socket套接字编程中,我们当然可以基于TCP的传输协议来进行传输,但是在文件的传输中, ...

  6. iOS 网络编程 TCP/UDP HTTP

    一.HTTP协议的主要特点: 1. CS模式 2. 简单快速:只需要传送请求方法和路径.(常用方法有GET,HEAD,POST) 3. 灵活:任意对象都可以,类型由Content-Type加以标记 4 ...

  7. Java入门网络编程-使用UDP通信

    程序说明: 以下代码,利用java的网络编程,使用UDP通信作为通信协议,描述了一个简易的多人聊天程序,此程序可以使用公网或者是局域网进行聊天,要求有一台服务器.程序一共分为2个包,第一个包:udp, ...

  8. java 网络编程-tcp/udp

    --转自:http://blog.csdn.net/nyzhl/article/details/1705039 直接把代码写在这里,解释看这里吧:http://blog.csdn.net/nyzhl/ ...

  9. 网络编程基础+UDP的实现

    网络地址分类(32位网络地址) A类地址:第一个字节为网络地址,其他3个字节主机地址,第一字节的最高位固定为0 从1.0.0.1------126.255.255.255 B类地址:第一字节和第二字节 ...

随机推荐

  1. 移动设备 h5屏幕适配

    <meta name="HandheldFriendly" content="true"><meta name="MobileOpt ...

  2. .net C#中页面之间传值传参的六种方法

    1.QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中.如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法.但是对于传递数组或对象的话,就不能 ...

  3. 【CF891C】Envy 离线+最小生成树

    [CF891C]Envy 题意:给你一个图,边有边权,每次询问给你一堆边,问你是否存在一个原图的最小生成树包含给出的所有边.n,m,q<=100000 题解:思路很好的题. 首先有一个非常重要的 ...

  4. gcd 多线程结束通知

    另外,GCD还有一些高级用法,例如让后台2个线程并行执行,然后等2个线程都结束后,再汇总执行结果.这个可以用dispatch_group, dispatch_group_async 和 dispatc ...

  5. OpenCV Create Circular Mask 圆形遮罩

    在OpenCV中,比较常见的是矩形遮罩CvRect,没有专门提供圆形的mask,那么我们只能自己写一个来模拟圆形mask的函数,需要提供的参数为原图的大小,以及圆形mask的圆心位置和半径即可,返回一 ...

  6. eclipse+gnuarm+使用报错

    Description Resource Path Location TypeProgram "echo" not found in PATH stm32 Project Prop ...

  7. windows下安装pytorch

    安装: https://blog.csdn.net/xiangxianghehe/article/details/80103095 Windows下通过pip安装PyTorch 0.4.0 impor ...

  8. strut2的标签

         DIY部落 新闻中心 交流论坛 千寻搜索   点击浏览该栏目下的更多电子书  收藏本站   struts2标签详解 文章整理: www.diybl.com 文章来源: 网络 去论坛 建我的b ...

  9. B-tree indexes

    High Performance MySQL, Third Edition by Baron Schwartz, Peter Zaitsev, and Vadim Tkachenko http://d ...

  10. 非常可乐---hdu 1495(BFS)

    http://acm.hdu.edu.cn/showproblem.php?pid=1495 题意: 有3个杯子a b c:a=b+c:然后刚开始时只有a是满的,其它为空的,然后a b c三个之间互相 ...