博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java 网络编程(二)----UDP基础级的示例
阅读量:5165 次
发布时间:2019-06-13

本文共 1482 字,大约阅读时间需要 4 分钟。

      下面介绍UDP基础级的代码示例:

首先了解创建UDP传输的发送端的思路:

1.创建UDP的Socket服务。

2.将要发送的数据封装到数据包中。
3.通过UDP的socket服务将数据包发送出去。
4.关闭socket服务。

而接收端的思想如下:

1.创建UDP的Socket服务。需要明确一个端口号。

2.创建数据包,用于存储接收到的数据,方便用数据包对象的方法解析各种数据。
3.使用socket服务的recive方法将接收到的数据存储到数据包中。
4.通过数据包中的方法解析数据包中的数据。
5.关闭资源。

具体代码如下:

//发送端

public class UDPSendDemo {

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

System.out.println("发送端启动。。。。。");
//1. UDP的Socket服务,使用DatagramSocket对象,可以指定一个端口进行发送,否则服务器会默认选一个未被使用的端口
DatagramSocket da = new DatagramSocket(9999);
//2. 将要发送的数据封装到数据包中。使用DatagramPacket将发送数据封装在里面
String str="UD发送数据演示";
byte[] buf=str.getBytes();
//定义了接收方的IP地址和端口
DatagramPacket dp= new DatagramPacket(buf, buf.length,InetAddress.getByName("192.168.5.163"),10000);
//3.通过UDP的socket服务将DatagramPacket数据包发送出去,使用send方法
da.send(dp);
//4.资源使用完,关闭资源
da.close();
}
}

// 接收端

public class UDPReciveDemo {

public static void main(String[] args) throws IOException {
System.out.println("接收端启动。。。");

//1.创建UDP的Socket服务。

DatagramSocket ds = new DatagramSocket(10000);
//2.创建接收的数据包
byte[] buf=new byte[1024];
DatagramPacket dp = new DatagramPacket(buf, buf.length);
//3.使用socket服务的recive方法将接收到的数据存储到数据包中。
ds.receive(dp);
//4.通过数据对象中的方法解析数据包中的数据。比如:IP地址,端口,内容
String ipString=dp.getAddress().getHostAddress();
int port =dp.getPort();
String data= new String(dp.getData(),0,dp.getLength());
System.out.println("ip :"+ipString+"\n"+"port :"+port+"\n"+"data :"+data);
// 5.关闭资源
ds.close();
}
}

转载于:https://www.cnblogs.com/loleina/p/5174679.html

你可能感兴趣的文章
CentOS安装rar及用法
查看>>
浅谈UitextField值变化的实时监视
查看>>
PHP原生文件上传(单文件多文件均可)简单案例
查看>>
智能手机音频信息取证
查看>>
倒计时计算
查看>>
listView加载在Dialog里面
查看>>
夺命雷公狗---memcache NO:05 分布式的内存对象缓存系统的配置
查看>>
WP开发图片保存到独立存储并从独立存储中读取
查看>>
TYVJ-P1864 守卫者的挑战 题解
查看>>
【福利】论机房如何关闭方正软件保护卡
查看>>
Android自定义控件:动画类(六)----ValueAnimator高级进阶(一)
查看>>
五一放假作业4.30 用正则表达式写一个计算器!去掉括号,计算式子结果!
查看>>
51Nod1353 树
查看>>
Jzoj5455【NOIP2017提高A组冲刺11.6】拆网线
查看>>
Android 聊天室(一)
查看>>
web性能优化
查看>>
用SugarORM快速开发需要同步和保存大量数据的Android互联网客户端
查看>>
单实例和多实例的区别以及用途
查看>>
ETHREAD APC 《寒江独钓》内核学习笔记(4)
查看>>
Tensorflow做阅读理解与完形填空
查看>>