基于Java的Socket类UDP网络编程是通过使用Java的DatagramSocket
类和DatagramPacket
类来实现的。UDP(User Datagram Protocol)是一种无连接的协议,它在网络上传输数据时不保证数据的可靠性,但具有快速和轻量的特点。
步骤:
(一)发送包类
1.创建Socket 服务
2.创建要发送包的信息
3.发送包
4.关闭socket
代码和注释如下:
import java.io.IOException;
import java.net.*;
public class send {
//发送端
public static void main(String[] args)throws IOException{
//创建Socket 服务
DatagramSocket socket =new DatagramSocket();
//创建要发送包的信息
try{
String str ="wlwhjc22102";
DatagramPacket packet =new DatagramPacket(str.getBytes(),str.getBytes().length,InetAddress.getByName("localhost"), 2024);
//发送这个包
socket.send(packet);
} catch(Exception e){}
//关闭socket
finally{
socket.close();
}
}
}
(二)接收包类
1.创建socket
2.定义要接收包的数组
3.创建接收包
4.收包
5.显示收到包的数据
6.关闭socket
import java.io.IOException;
import java.net.*;
public class receive {
public static void main(String[] args) throws IOException{
//接收端
//创建socket
DatagramSocket socket =new DatagramSocket(2024);
try{
byte[] buf= new byte[100];
DatagramPacket Repacket = new DatagramPacket(buf,buf.length);
socket.receive(Repacket);
System.out.println(new String(buf ,0,Repacket.getLength()));
} catch(Exception e1){}
finally{
socket.close();
}
}
}
在运行该程序时注意:
1.先运行receive再运行send,返回receive查看接收结果
2.最好用IDEA,2024前会自动跳port: ,0前面会自动跳offset:\
程序运行结果如下图所示