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; ...
随机推荐
- 想要转战CSDN了!!
CSDN博客地址: https://blog.csdn.net/weixin_41559364
- 【Luogu2496】【BZOJ3005】[SDOI2012]体育课
把自己去年在luogu写的一个题解搬过来 原题解链接 1. 题目大意 给定一个长度为 \(n\) 的数列 \(a_1,a_2,a_3,...,a_n\) , 并给出 \(m\) 个操作,操作类型如下: ...
- SqlServer查看锁表与解锁
某些情况下,sqlserver的表会被锁住,比如某个会话窗口有数据一直没提交,窗口又没关闭,这时表就会被锁住 其他任何连接查询表数据时都不会返回 这时需要手工杀掉产生死锁的会话ID,才能恢复正常 查看 ...
- c语言查漏补缺
getchar:执行getchar()函数时,首先从输入缓存区读取字符,直到输入缓存区为空时才等待从键盘继续输入.scanf()之间不要有printf操作. 逗号表达式 a= (++a,1,2),只取 ...
- Windows使用Nexus搭建Maven私服
简介 Maven私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件,有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库,否则,私服请求外部的 ...
- IDEA开发spring boot应用时 application.yml 或 application.properties 自定义属性提示
在使用spring boot开发过程中,经常会定义一些应用自己的属性,直接写到application配置文件中使用@Value注解进行使用,这样使用也没有什么问题.不过我认为更优雅的方式是定义自己的属 ...
- windows上通过自定义后缀文件启动Unity应用
好吧,一个Unity应用并不常见的需求.. 两个步骤 1.关联注册表 2.把自定义后缀文件作为启动参数传给Unity做处理 1.关联注册表 (.XXXX是自定义后缀) Windows Registr ...
- Hadoop数据压缩技术
一.Hadoop数据压缩及其优缺点 1.压缩技术的好处与坏处 好处: 减少存储磁盘空间 降低IO(网络的IO和磁盘的IO) 加快数据在磁盘和网络中的传输速度,从而提高系统的处理速度. 坏处: 由于使用 ...
- codeforces 586B:Laurenty and Shop
B. Laurenty and Shop time limit per test 1 second memory limit per test 256 megabytes input standard ...
- 官网英文版学习——RabbitMQ学习笔记(四)Work queues
工作队列:把每个任务只发送给一个工作者. 上一篇我们是从一个指定的队列发送接收消息,在本文中,我们将创建一个工作队列,用于在多个工作者之间分配耗时的任务. 工作队列(即任务队列)背后的主要思想是避免立 ...