本文共 1450 字,大约阅读时间需要 4 分钟。
发送方;
package com.fcj.udp;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetSocketAddress;import java.net.SocketException;/** * 发送端 * @author 佳哥 * */public class UDPClient { public static void main(String[] args) throws Exception { System.out.println("发送方启动中。。。。。"); // 1.使用DatagramSocket指定端口创建发送端 DatagramSocket client = new DatagramSocket(8888); //2、准备数据一定转成字节数组 String data = "我叫佳哥"; byte[] datas = data.getBytes(); //3、封装成DatagramPacket包裹.需要指定目的地 DatagramPacket packet = new DatagramPacket(datas,0, datas.length, new InetSocketAddress("localhost",9999)); //4、发送包裹send(DatagramPacket p). client.send(packet); //5、释放资源 client.close();}}
*******************************
接收方;package com.fcj.udp;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetSocketAddress;import java.net.SocketException;/** * 同一个协议下端口不允许重复 * 接收端 * @author 佳哥 * */public class UDPServer { public static void main(String[] args) throws Exception { System.out.println("接受方启动中。。。。。"); //1、使用DatagramSocket指定端口创建接收端 DatagramSocket server = new DatagramSocket(9999); //2.准备容器封装成DatagramPacket包裹 byte[] container = new byte[1024*60]; DatagramPacket packet = new DatagramPacket(container,0,container.length); //3、阻塞式接收包裹receive(DatagramPacket p) server.receive(packet); //4、分析数据 // byte[] getData() byte[] datas = packet.getData(); // getLength() int len = packet.getLength(); //5.释放资源 server.close();}}
转载地址:http://hgeq.baihongyu.com/