Java:网络编程之UDP的使用
import java.net.*; //发送数据
class UdpSend
{
public static void main(String[] args)throws Exception
{
//1,建立udp服务,通过DatagramScoket,建立端点
DatagramSocket ds = new DatagramSocket(10000);//可以指定发送端口,例如10000,也可以不用指定,让系统随机默认分配 //2,确定数据,并封装成数据包.DatagramPacket(byte[] buf, int length, InetAddress address, int port)
byte[] buf = "udp is coming".getBytes();//直接指定信息数据 DatagramPacket dp = new DatagramPacket(buf,buf.length,InetAddress.getByName("192.168.1.105"),8888); //3,通过scoket服务的send方法发送数据,
ds.send(dp); //4,关闭资源
ds.close();
}
}
//接收数据
class UdpReceive
{
public static void main(String[] args)throws Exception
{
//1,建立udp服务,通过DatagramScoket,建立端点
DatagramSocket ds = new DatagramSocket(8888);//必须指定接收端应用程序的端口,用来匹配发送端数据包来的端口号
while(true)
{
//2,创建一个字节数据包用于存储接收过来的字节数据
byte[] buf = new byte[1024];
DatagramPacket dp = new DatagramPacket(buf,buf.length); //3,通过scoket服务的receive方法接收数据,
ds.receive(dp);//阻塞式方法 //4,将字节数据转换为字符串并输出
String message = new String(dp.getData(),0,dp.getLength());
String IP = dp.getAddress().getHostAddress();
int port = dp.getPort();
System.out.println("IP:"+IP+"::"+"port:"+port);
System.out.println("message:"+message);
} //5,关闭资源
//ds.close();
}
}
Java:网络编程之UDP的使用的更多相关文章
- Java网络编程之UDP
Java网络编程之UDP 一.C/S架构中UDP网络通信流程 ①创建DatagramSocket与DatagramPacket对象 ②建立发送端,接收端 ③建立数据包 ④调用Socket的发送.接收方 ...
- java网络编程之UDP通讯
详细介绍了java中的网络通信机制,尤其是UDP协议,通过对UDP的基本使用进行举例说明如何使用UDP进行数据的发送接收,并举了两个小demo说明UDP的使用注意事项. UDP协议原理图解: UDP协 ...
- java 网络编程之UDP通信和简单的群聊程序
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- java网络编程之UDP实例
package Socket; import java.net.DatagramPacket; import java.net.InetAddress; public class Dgram { pu ...
- Java网络编程之TCP、UDP
Java网络编程之TCP.UDP 2014-11-25 15:23 513人阅读 评论(0) 收藏 举报 分类: java基础及多线程(28) 版权声明:本文为博主原创文章,未经博主允许不得转载. ...
- 网络编程之UDP编程
网络编程之UDP编程 UDP协议是一种不可靠的网络协议,它在通信的2端各建立一个Socket,但是这个Socket之间并没有虚拟链路,这2个Socket只是发送和接受数据的对象,Java提供了Data ...
- Java网络编程之InetAddress浅析
Java网络编程之InetAddress浅析 一.InetAddress综述 IP地址是IP使用的32位(IPv4)或者128位(IPv6)位无符号数字,它是传输层协议TCP,UDP的基础.InetA ...
- Java网络编程之URLConnection
Java网络编程之URLConnecton 一.URLConnection简介 URLConnection是一个抽象类,表示指向URL指定资源的活动连接.URLConnection有两个不同但相关的用 ...
- Java网络编程之URL和URI
Java网络编程之URL与URI 一.URL与URI简介 URI = Universal Resource Identifier 统一资源标志符 URL = Universal Resource Lo ...
- Java网络编程之TCP
Java网络编程之TCP TCP主要需要两个类:Socket和ServerSocket,Socket是客户端连接服务器时创建,参数需要指定服务器的ip和端口,ServerSocket是服务器端创建 ...
随机推荐
- 一些常用到的Centos命令
CentOS常用命令在我们的使用中,经常被使用.所以,我们对一些经常使用又很重要的CentOS常用命令进行了全面的整理.下面,就来介绍这些CentOS常用命令. 一:使用CentOS常用命令查看cpu ...
- C#日志编写
在一个完整的信息系统里面,日志系统是一个非常重要的功能组成部分.它可以记录下系统所产生的所有行为,并按照某种规范表达出来.我们可以使用日志系统所记录的信息为系统进行排错,优化系统的性能,或者根据这些信 ...
- NYOJ-655 光棍的YY AC 分类: NYOJ 2013-12-29 19:24 224人阅读 评论(0) 收藏
#include<stdio.h> #include<string.h> char str[210]; int max[210][52]={0}; int sum(int n, ...
- std::function,std::bind复习
#include <iostream> #include <functional>//std::bind返回函数对象 void fun1(int a, int b) { std ...
- 引擎设计跟踪(九.14.2g) 将GNUMake集成到Visual Studio
最近在做纹理压缩工具, 以及数据包的生成. shader编译已经在vs工程里面了, 使用custom build tool, build命令是调用BladeShaderComplier, 并且每个文件 ...
- Virtualbox网络设置和无UI启动
因工作需要,在Macbook上安装Ubuntu 14.04.2虚拟机,需要ssh连接操作. 一番查找资料,实践后可以正常工作了,记录一些信息以备用 无UI启动虚拟机,可使用以下命令: VBoxMana ...
- 对drupal的理解【转】
写本文是想跟刚用drupal的朋友,分享一下心得,国内用drupal的太少了,希望大家能好好交流. 希望几分钟看完后你能马上上手drupal,至少能理解hook,api,theme,module,cc ...
- 利用GBDT模型构造新特征具体方法
利用GBDT模型构造新特征具体方法 数据挖掘入门与实战 公众号: datadw 实际问题中,可直接用于机器学**模型的特征往往并不多.能否从"混乱"的原始log中挖掘到有用的 ...
- [Qt] 界面美化 [2013-06-17更新](转载)
- 经验总结 1. 可用对话框(QDialog)模拟类似Android中toast的效果. - 设置程序界面风格 在main函数中QApplication::setStyle("wi ...
- HDU2829 Lawrence(斜率优化dp)
学了模板题之后上网搜下斜率优化dp的题目,然后就看到这道题,知道是斜率dp之后有思路就可以自己做不出来,要是不事先知道的话那就说不定了. 题意:给你n个数,一开始n个数相邻的数之间是被东西连着的,对于 ...