首页 » 网站建设 » phpsocketbyte数组技巧_基于UDP协议的Socket通信

phpsocketbyte数组技巧_基于UDP协议的Socket通信

访客 2024-12-06 0

扫一扫用手机浏览

文章目录 [+]

Step 1:创建DatagramSocket,指定端口号

Step 2:创建DatagramPacket

phpsocketbyte数组技巧_基于UDP协议的Socket通信

Step 3:吸收客户端发送的数据信息

phpsocketbyte数组技巧_基于UDP协议的Socket通信
(图片来自网络侵删)

Step 4:读取数据

示例代码:

public class UPDServer {

public static void main(String[] args) throws IOException {

/

吸收客户端发送的数据

/

// 1.创建做事器端DatagramSocket,指定端口

DatagramSocket socket = new DatagramSocket(12345);

// 2.创建数据报,用于吸收客户端发送的数据

byte[] data = new byte[1024];// 创建字节数组,指定吸收的数据包的大小

DatagramPacket packet = new DatagramPacket(data, data.length);

// 3.吸收客户端发送的数据

System.out.println(\"大众做事器端已经启动,等待客户端发送数据\"大众);

socket.receive(packet);// 此方法在吸收到数据报之前会一贯壅塞

// 4.读取数据

String info = new String(data, 0, packet.getLength());

System.out.println(\公众我是做事器,客户端说:\公众 + info);

/

向客户端相应数据

/

// 1.定义客户真个地址、端口号、数据

InetAddress address = packet.getAddress();

int port = packet.getPort();

byte[] data2 = \"大众欢迎您!\公众.getBytes();

// 2.创建数据报,包含相应的数据信息

DatagramPacket packet2 = new DatagramPacket(data2, data2.length, address, port);

// 3.相应客户端

socket.send(packet2);

// 4.关闭资源

socket.close();

}

}

2.客户端实现步骤:

Step 1:定义发送信息

Step 2:创建DatagramPacket,包含将要发送的信息

Step 3:创建DatagramSocket

Step 4:发送数据

public class UDPClient {

public static void main(String[] args) throws IOException {

/

向做事器端发送数据

/

// 1.定义做事器的地址、端口号、数据

InetAddress address = InetAddress.getByName(\公众localhost\公众);

int port = 8800;

byte[] data = \"大众用户名:admin;密码:123\公众.getBytes();

// 2.创建数据报,包含发送的数据信息

DatagramPacket packet = new DatagramPacket(data, data.length, address, port);

// 3.创建DatagramSocket工具

DatagramSocket socket = new DatagramSocket();

// 4.向做事器端发送数据报

socket.send(packet);

/

吸收做事器端相应的数据

/

// 1.创建数据报,用于吸收做事器端相应的数据

byte[] data2 = new byte[1024];

DatagramPacket packet2 = new DatagramPacket(data2, data2.length);

// 2.吸收做事器相应的数据

socket.receive(packet2);

// 3.读取数据

String reply = new String(data2, 0, packet2.getLength());

System.out.println(\"大众我是客户端,做事器说:\公众 + reply);

// 4.关闭资源

socket.close();

}

}

本节小结:

本节内容比较大略,无非便是将数据转换为字节,然后放到DatagramPacket(数据报包中),发送的 时候带上接管者的IP地址和端口号,而吸收时,用一个字节数组来缓存!
发送的时候须要创建一个 DatagramSocket(端到端通信的类)工具,然后调用send方法给接管者发送数据报包~ 本节代码来源于慕客网上的一个JavaSocket教程~有兴趣的可以看看:

标签:

相关文章

php5003毛病技巧_群晖安装tycheo博客

群晖环境搭建:首先进入套件中央,下载web station,安装会提示安装PHP 5.6 点是即可安装数据库管理工具 phpmya...

网站建设 2024-12-08 阅读0 评论0