当前位置:首页 > 编程笔记 > 正文
已解决

UDP网络编程的接受与发送信息

来自网友在路上 194894提问 提问时间:2023-11-01 00:31:09阅读次数: 94

最佳答案 问答题库948位专家为你答疑解惑

/发送端B===>可以接受数据
public class UDPSenderB {public static void main(String[] args) throws IOException {//创建一个DatagramSocket 对象,准备发送和接受数据DatagramSocket socket = new DatagramSocket(9998);//将需要发送的数据,封装到DatagramPacket对象byte[] data = "hello “明天吃火锅~".getBytes();DatagramPacket packet = new DatagramPacket(data, 0, data.length, InetAddress.getLocalHost(), 9999);socket.send(packet);//现在接受A发送的信息data = packet.getData();int len = packet.getLength();packet = new DatagramPacket(data, data.length);socket.receive(packet);String s = new String(data,0,len);System.out.println(s);System.out.println("UDPB端已经退出~");//关闭资源socket.close();}
}
public class UDPReceiverA {public static void main(String[] args) throws IOException {//1.创建一个DatagramSocket 对象,准备在9999接收数据DatagramSocket socket = new DatagramSocket(9999);//2.构建一个DatagramPacket对象,准备接受数据//一个数据包最大为64K===>2^16-1byte[] buf = new byte[1024];DatagramPacket packet = new DatagramPacket(buf, buf.length);//3.调用接受方法,将通过网络传输的DatagramPacket对象//填充到packet对象System.out.println("正在等待接收数据...");socket.receive(packet);//现在将数剧进行解包int len = packet.getLength();byte[] bytes = packet.getData();String s = new String(bytes,0,len);System.out.println("接收到的数据为:"+s);//现在发送数据byte[] bytes1 = "好的,明天见!".getBytes();DatagramPacket packet1 =new DatagramPacket(bytes1,0,bytes1.length, InetAddress.getLocalHost(),9998);socket.send(packet1);System.out.println("UDPA端已经退出~");//关闭数据流socket.close();}
}

 

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"UDP网络编程的接受与发送信息":http://eshow365.cn/6-29140-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!