14 java里的udp网络编程
来源:互联网 发布:笔记本电脑蹭网软件 编辑:程序博客网 时间:2024/05/29 16:20
java里把udp网络功能封装成DatagramSocket类.
udp的接收/发送端的用法:
1 创建DatagramSocket类对象,如是接收端时还需创建对象时绑定端口号.
DatagramSocket udp = null; //声明一个DatagramSocket指针变量,用于存放创建的DatagramSocket对象地址 try { udp = new DatagramSocket(7788); //创建udp对象并绑定端口号(接收端需要指定端口号), 如果是创建发送端的对象则可以不指定绑定端口号 } catch (SocketException e) { //异常处理 ... }
2 创建DatagramSocket对象后,就可以进行接收或发送数据
byte [] data = new byte[1500]; DatagramPacket dp = new DatagramPacket(data, data.length); // 创建一个udp数据包对象,用于存放接收到的或要发出的数据内容.// 接收udp数据 try { udp.receive(dp); //等待接收数据 } catch (IOException e) { //... }//发出数据 dp.setAddress(InetAddress.getByName("192.168.250.255")); //设置要发送到的目的ip地址 dp.setPort(7788); //设置目的端口号 udp.send(dp); //发出数据
如实现一个udp广播功能网络程序,把接收到的数据广播到局域网内绑定端口号7788的udp网络程序.
/* Main.java */import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;import java.net.SocketException;public class Main { public static void main(String[] args) throws IOException { DatagramSocket udp = null; try { udp = new DatagramSocket(7788); //创建udp对象并绑定端口号 } catch (SocketException e) { e.printStackTrace(); System.exit(0); } byte [] data = new byte[1500]; DatagramPacket dp = new DatagramPacket(data, data.length); udp.setBroadcast(true); //让DatagramSocket对象支持udp广播功能 while (true) { try { udp.receive(dp); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); break; } System.out.println(dp.getAddress()+":"+dp.getPort()+ " " + new String(data, 0, dp.getLength())); dp.setAddress(InetAddress.getByName("192.168.250.255")); //目的ip地址为广播地址 dp.setPort(7788); udp.send(dp); } }}
阅读全文
0 0
- 14 java里的udp网络编程
- java udp网络编程
- java 网络编程 UDP
- java网络编程UDP
- java网络编程---udp
- Java - 网络编程 - UDP
- Java网络编程UDP
- java网络编程---udp
- Java UDP 网络编程
- Java UDP网络编程
- java UDP网络编程
- Java UDP网络编程
- java网络编程 udp
- Java UDP网络编程
- java网络编程之 UDP的使用
- java基于UDP协议的网络编程
- java的基础网络编程:TCP/UDP
- Java网络编程UDP的使用
- jscpd--前端代码重复率检测
- hdu 3966 Aragorn's Story
- 用Java实现二叉链表方式存储的二叉树
- 依赖注入
- servlet监听器
- 14 java里的udp网络编程
- 封装
- 排序之插入排序(java实现的)
- 机械、电子、计算机类优秀的论坛或者网站
- mui createMask 遮罩层不隐藏问题
- 字母转换
- PLSQL 11破解码
- HTML 文本框只读 不能修改其中的内容
- [JS] 七种加密解密方法