Java UDP发送与接收
IP地址?端口号?主机名?
什么是Socket?
什么是UDP?
什么是TCP?
UDP和TCP区别?
以上问题请自行百度,有标准解释,此处不再赘述,直接上干货!
实例:
发送端:
public class UDPSend {
public static void main(String[] args) throws IOException {
//创建发送端Socket对象
DatagramSocket ds = new DatagramSocket();
//创建数据并打包
/*
* DatagramPacket(byte[] buf,int length,InetAddress address,int port);
*/
String s = "This first UDP,im comming";
byte[] bys = s.getBytes();
int length = bys.length;
InetAddress address = InetAddress.getByName("127.0.0.1");
int port = 8888;
//打包
DatagramPacket dp = new DatagramPacket(bys,length,address,port);
//发送
ds.send(dp);
//释放
ds.close();
}
}
接收端:
public class UDPReceive {
public static void main(String[] args) throws IOException {
//创建接收端Socket对象
DatagramSocket ds = new DatagramSocket(8888);
//接受数据
byte[] bys = new byte[1024];
DatagramPacket dp= new DatagramPacket(bys, bys.length) ;
//阻塞
ds.receive(dp);
//解析数据
InetAddress address = dp.getAddress();
//获取接收到的数据
byte[] data = dp.getData();
//获取具体收到的数据长度
int length = dp.getLength();
//发送人
System.out.println("sender :"+address.getHostAddress());
//接收到的内容
System.out.println(new String(data,0,length));
//释放资源
ds.close();
}
}
测试:
先运行Receive 接收端,监听!
然后运行Send 发送端发送数据!
然后接收端便能监听到数据!

最后附上API文档说明,以免有人看不明白上面的代码






Java UDP发送与接收的更多相关文章
- Java邮件发送与接收原理
一. 邮件开发涉及到的一些基本概念 1.1.邮件服务器和电子邮箱 要在Internet上提供电子邮件功能,必须有专门的电子邮件服务器.例如现在Internet很多提供邮件服务的厂商:sina.sohu ...
- C# UDP发送和接收
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Ne ...
- UDP发送和接收
发送函数 public bool udpSend(string ip, int port, byte[] data) { Socket socket = new Socket(AddressFamil ...
- java udp 发送小数数字(较难)
代码全部来自:http://825635381.iteye.com/blog/2046882,在这里非常感谢了,我运行测试了下,非常正确,谢谢啊 服务端程序: package udpServer; i ...
- Java Socket发送与接收HTTP消息简单实现
在上次Java Socket现实简单的HTTP服务我 们实现了简单的HTTP服务,它可以用来模拟HTTP服务,用它可以截获HTTP请求的原始码流,让我们很清楚的了解到我们向服务发的HTTP消息的结 构 ...
- Linux系统下UDP发送和接收广播消息小例子
// 发送端 #include <iostream> #include <stdio.h> #include <sys/socket.h> #include < ...
- Java TCP发送与接收
IP地址?端口号?主机名? 什么是Socket? 什么是UDP? 什么是TCP? UDP和TCP区别? 以上问题请自行百度,有标准解释,此处不再赘述,直接上干货! 实例: 发送端: public cl ...
- Linux系统下UDP发送和接收广播消息小样例
[cpp] view plaincopy // 发送端 #include <iostream> #include <stdio.h> #include <sys/sock ...
- C# WinForm UDP 发送和接收消息
using System; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; ...
随机推荐
- xcode 6 如何将 模拟器(simulator) for iphone/ipad 转变成 simulator for iphone
xcode 6默认模拟器是iphone/ipad通用的,如果想只针对iphone或者ipad可以进行如下设置: 1.修改模拟器大小(非必须) 模拟器->WIndow->scale-> ...
- GET乱码以及POST乱码的解决方法
GET乱码以及POST乱码的解决方法 作者:东坡下载 来源:uzzf 发布时间:2010-10-14 11:40:01 点击: 一.GET乱码的解决方法 在tomcat的server.xml文件 ...
- 留学生想要搞定Reading List?只需这三步即可
听到有同学在抱怨“一本书都读不完,还怎么搞定reading list啊?”别急,小编这就来给你支招啦!你的文献阅读方法错了,读起来不仅效率低,而且无法做到熟练运用.因此,你需要以下这3步,就能搞定文献 ...
- WinCC V7.5安装过程截图
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 按钮:禁用状态
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- python进阶强化学习
最近学习了慕课的python进阶强化训练,将学习的内容记录到这里,同时也增加了很多相关知识. 主要分为以下九个模块: 基本使用 迭代器和生成器 字符串 文件IO操作 自定义类和类的继承 函数装饰器和类 ...
- vue使用videojs控制后台m3u8数据请求
关于Video.js的使用方法就不再说了,有兴趣的请迁跃:https://videojs.com/ VideoJS中并没有stop之类控制后台数据请求的参数,只有暂停 video.pause()方法 ...
- Kubernetes——命令行操作
如果集群初始化失败需要的操作: master: kubeadm reset #回答y 执行一条它提示给你的iptables命令即可 node: systemctl stop kubelet ...
- 挖洞经验 | 绕过WAF限制利用php:方法实现OOB-XXE漏洞利用
几个星期以前,作者在某个OOB-XXE漏洞测试中遇到过这样一种场景:目标应用后端系统WAF防火墙阻挡了包含DNS解析在内的所有出站请求(Outgoing Request),但最终,通过利用php:// ...
- Spark Storage 模块
http://jerryshao.me/architecture/2013/10/08/spark-storage-module-analysis/ 大神写的太好了,我就不重复造轮子了. Spark ...