首先 我们先来了解一下 UDP 首先 他是一种不可靠的网络协议
他在通信的两端 各建立一个 Socke对象 但是他们只是 发送和接收数据的对象
发送端只管发送 不会顾及接收端是否接到 接收到只负责接收数据 而不会给出发送端反馈
因此对于UDP通信的双方而言 是有没什么 客户端和服务器的概念的
java 的net包下的 DatagramSocket 类就能帮我们创建 Socke通信对象
然后我们创建一个测试类 直接编写代码如下
import java.io.IOException;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.DatagramPacket;
public class text {
public static void main(String args[]) throws IOException {
//通过 DatagramSocket 类创建一个发送端的对象
DatagramSocket ds = new DatagramSocket();
byte[] data = "Hello World".getBytes();
InetAddress addIp = InetAddress.getByName("ip地址");
DatagramPacket dp = new DatagramPacket(data,data.length,addIp,6800);
ds.send(dp);
}
}
这里 我们通过 DatagramSocket 类创建了一个发送数据的对象 然后创建一个叫data的字节数组 这也是我们这次要发过去的主要内容
然后 我们通过 InetAddress的getByName通过ip创建一个计算机通讯对象
通过DatagramPacket 类 实现数据报包 我们选择的构造方法 需要的参数是 字节数组 数据长度 设备ip对象 端口号
对应我们传给他的四个参数
最后 通过DatagramSocket 创建的 发送端对象 把数据包发出去
运行结果如下
因为我们这里 并没有接收数据 所以也看不出什么效果 没有报错 说明数据就已经是发出去了的