使用UDP协议编写一个网络程序,设置接收端程序的监听端口是8001,发送端发送的数据是“Hello, world”。
接收端
- import java.net.*;
- public class UdpReceive {
- public static void main(String[] args)throws Exception {
- //创建存放接收数据的数组
- byte[] b=new byte[1024];
- //创建接收端的DatagramSocket对象,端口号为8001
- DatagramSocket ds=new DatagramSocket(8001);
- //创建DatagramPacket对象,用于接收数据
- DatagramPacket dp=new DatagramPacket(b,1024);
- System.out.println("等待接收数据");
- //等待接收数据
- ds.receive(dp);
- //获取接收到的数据
- String str=new String(dp.getData());
- System.out.println(str);
- ds.close();
- }
- }
发送端
- import java.net.*;
- public class UdpSend {
- public static void main(String[] args) throws Exception{
- //创建存放发送数据的字节数组
- byte[] b=new byte[1024];
- //创建接收端的DatagramSocket对象
- DatagramSocket ds=new DatagramSocket();
- //要发送的数据
- String str="Hello,world!";
- //创建一个数据包
- DatagramPacket dp=new DatagramPacket(str.getBytes(),str.length(),InetAddress.getByName("localhost"),8001);
- //发送数据
- System.out.println("发送消息");
- ds.send(dp);
- ds.close();
- System.out.println("消息发送完毕");
- }
- }
运行结果