UDP发送/接收数据
UDP:无连接的传输协议
发送和接收数据时都不需要建立连接。
发送数据的步骤:
1 创建发送端的Socket对象(DatagramSocket)
2 创建要发送的数据,并把数据打包
3 调用DatagramSocket的send方法
4 关闭发送端
接受端的步骤:
1 创建接收端的Socket对象(DatagramSocket)
2 创建一个数据包,用来接收数据
3 调用DatagramSocket的receive方法
(4 解析数据包,在控制台上打印数数据包中的数据内容)(可选)
5 关闭接收端
这是发送端
package wx;
import java.io.IOException;
import java.net.*;
public class demo02_NET {
public static void main(String[] args) throws IOException {
DatagramSocket socket = new DatagramSocket();
DatagramPacket packet = new DatagramPacket(“udp data”.getBytes(),“udp data”.length(),InetAddress.getByName(“192.168.194.241”),10000);
socket.send(packet);
socket.close();
}
}
这是接收端
package wx;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class demo03_NET {
public static void main(String[] args) throws IOException {
DatagramSocket socket = new DatagramSocket(10000);
byte[] bytes = new byte[1024];
DatagramPacket packet = new DatagramPacket(bytes,0,bytes.length);
socket.receive(packet);
System.out.println(new String(packet.getData()));
System.out.println(packet);
System.out.println(packet.getData());
socket.close();
}
}
打印在控制台上的有数据包的值,数据包对象和数据包地址值
udp data
java.net.DatagramPacket@74a14482
[B@1540e19d
如图: