Java网络编程之UDP通信例子
来源:互联网 发布:用指针给数组排序3个数 编辑:程序博客网 时间:2024/05/01 01:50
UDPServer.java
import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;/** * @description * @date:(2015-9-14 下午11:07:55) * @author Administrator * @version v1.0 * @since v1.0 * * Modified history * * Modified date: * Modifier user: * description: * * */public class UDPServer {public static void main(String[] args) throws IOException {//监听8986端口DatagramSocket server=new DatagramSocket(8986);byte[] recvBuf=new byte[1024];//DatagramPacket(byte[] buf, int length):将数据包中Length长的数据装进Buf数组,一般用来接收客户端发送的数据DatagramPacket recvpacket=new DatagramPacket(recvBuf, recvBuf.length);//receive方法是阻塞式的,知道收到客户端请求才会往下走//接收数据报文到recvpacket中server.receive(recvpacket);String recvStr=new String(recvpacket.getData(),0,recvpacket.getLength());System.out.println("receive from client:"+recvStr);int port=recvpacket.getPort();//发送端地址//发送端地址InetAddress addr=recvpacket.getAddress();//响应数据String response="hello! I'm Server";byte[] sendBuf=response.getBytes();//从sendBuf数组中,取出Length长的数据创建数据包对象,目标是clientAddress地址,clientPort端口//,通常用来发送数据给客户端。DatagramPacket sendpacket=new DatagramPacket(sendBuf, sendBuf.length,addr,port);//发送报文sendpacket到目的地server.send(sendpacket);server.close();}}
Client.java
import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;/** * @description * @date:(2015-9-14 下午11:17:12) * @author Administrator * @version v1.0 * @since v1.0 * * Modified history * * Modified date: * Modifier user: * description: * * */public class Client {public static void main(String[] args) throws IOException {DatagramSocket client=new DatagramSocket();String sendStr="Hello! I'm client";byte[] sendBuf=sendStr.getBytes();InetAddress addr=InetAddress.getByName("127.0.0.1");int port=8986;//从Buf数组中,取出Length长的数据创建数据包对象,目标是clientAddress地址,clientPort端口,通常用来发送数据DatagramPacket sendpacket=new DatagramPacket(sendBuf, sendBuf.length, addr, port);//发送报文sendpacket到目的地client.send(sendpacket);byte[] recvBuf=new byte[1024];DatagramPacket recvPacket=new DatagramPacket(recvBuf,recvBuf.length);//接收数据报文到recvpacket中client.receive(recvPacket);String recvStr=new String(recvPacket.getData(),0,recvPacket.getLength());System.out.println("receive from server:"+recvStr);client.close();}}
0 0
- Java网络编程之UDP通信例子
- Java网络编程之UDP网络通信
- JAVA网络编程之UDP通信演示
- Java中网络通信编程之UDP通信
- Java网络编程:UDP通信
- Java网络编程:UDP通信
- JAVA网络编程--UDP通信
- Java网络编程:UDP通信
- JAVA 网络编程 UDP通信
- java中的网络通信编程之UDP篇
- 1.6 网络编程之 UDP通信
- Windows网络编程之UDP通信
- Java中的TCP/UDP网络通信编程
- Java中的TCP/UDP网络通信编程
- Java网络编程(三) UDP通信
- java网络编程之UDP
- java网络编程之UDP
- java网络编程之UDP
- 初级数据持久化 - 沙盒机制 归档 与反归档
- java__IO
- React Native for Android初探
- clk的获取过程
- 女人穿衣的20条基本法则
- Java网络编程之UDP通信例子
- UVa 1025:A Spy in the Metro(DP)
- ios开发之状态栏隐藏
- RevitAPI: 如何使用API创建墙饰条
- 今天碰到一个骗子
- Android studio中使用fastjson
- 大数运算(四)——大数相乘
- UVALive 6656 Watching the Kangaroo(二分)
- linux device常用的管理机制