Java 基于 UDP 协议的 Socket 编程 —— 服务器端程序
程序员文章站
2022-03-04 20:46:22
...
package aaa;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
public class Main { // 别忘记了抛出异常
public static void main(String[] args) throws IOException {
DatagramSocket ds = new DatagramSocket(5000);
// 下一步 服务器接受客户端传来的数据,然后经过变换发送出去
// 首先接收数据
while (true) {
byte[] buf = new byte[1024];
DatagramPacket dpa = new DatagramPacket(buf, buf.length); //接收指定长度的数据包
ds.receive(dpa);
String strReceive = new String(dpa.getData(), 0, dpa.getLength()); // 获取数据、指定开始、结束长度
System.out.println("客户端传来的信息:" + strReceive);
// 变换一下发送出去
String strSend = "服务器接收的数据是: " + strReceive;
DatagramPacket dpSend = new DatagramPacket(strSend.getBytes(), strSend.getBytes().length, dpa.getAddress(),
dpa.getPort()); // 构造数据报包,将长度为length的发到指定主机的指定端口号
ds.send(dpSend);
if (strReceive.equals("exit")) {
break;
}
}
// 关闭流
ds.close();
}
}
上一篇: 网络通信(三)UDP程序设计(java)