首页 > 代码库 > UDP发送端&UDP接收端
UDP发送端&UDP接收端
UDP发送端:
import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;import java.net.SocketException;import java.net.UnknownHostException;public class UdpSendDemo { public static void main(String[] args) throws IOException { /* * 需求:建立udp发送端 * 思路: * 1.建立可以实现udp传输的socket服务 * 2.明确具体发送的数据 * 3.通过socket服务将具体的数据发送出去 * 4.关闭服务 */ System.out.println("udp发送端启动....."); //1.创建udp服务 DatagramSocket ds = new DatagramSocket(1025); //2.明确数据 String s = "注意啦,UDP来了"; //3.发送数据,将数据封装到数据包中。 //3.1将数据封装到数据包对象中,数据汇明确目的地址和端口 byte[] buf = s.getBytes(); DatagramPacket dp = new DatagramPacket(buf, buf.length, InetAddress.getByName("dell-pc"),10000); //3.2发送 ds.send(dp); ds.close(); }}
UDP接收端:
import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.SocketException;public class UdpReceiveDemo { public static void main(String[] args) throws IOException { /* * 创建udp的接收端 * 思路: * 1.创建socket服务,明确一个端口。 * 2.收数据 * 3.将其中所需要的数据取出来。ip,data,port * 4.关闭资源 */ System.out.println("udp接收端启动了....."); //1.创建socket服务 DatagramSocket ds = new DatagramSocket(10000); //2.使用socket的接受方法,接收数据,需要到收到的数据存储到数据包中 //可以通过数据包对象的方法对收到的数据进行解析 //2.1创建一个数据包 byte[] buf = new byte[1024]; DatagramPacket dp = new DatagramPacket(buf, buf.length); ds.receive(dp);//阻塞式方法 //3.通过数据包对象解析收到的数据,使用数据包的方法 String ip = dp.getAddress().getHostAddress(); int port = dp.getPort(); //获取文字数据 String str = new String(dp.getData(),0,dp.getLength()); System.out.println(ip+":"+port+"------"+str); //4.关闭资源 ds.close(); }}
UDP发送端&UDP接收端
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。