/*
通过UDP传输方式,将一段文字数据发送出去
1.建立udpsocket服务
2.提供数据,并将数据封装到数据包中。
3.通过socket服务的发送功能。将数据包发出去
4.关闭资源
类:
DatagramPacket 封装数据包
DatagramSocket 创建UDP服务
*/
import java.net.*;
class UdpSend
{
public static void main(String[] args)throws Exception
{
DatagramSocket ds = new DatagramSocket();
byte[] buf = "UDP Demo".getBytes();
DatagramPacket dp = new DatagramPacket(buf,buf.length,InetAddress.getByName("127.0.0.1"),10000);//10000为定义的端口
ds.send(dp);
ds.close();
}
}
/*
定义一个应用程序,用于接受udp协议传输的数据并处理
1.定义udpsocket服务
2.定义一个数据包类,用于存放接受到的数据包(字节数据)。并使用该类处理数据
3.通过socket服务的receive方法接受的数据出入已定义的数据包类中
4.使用数据包类功能处理数据
5.关闭资源
*/
class UdpReceive
{
public static void main(String[] args)throws Exception
{
//创建UDP socket,建立端点
DatagramSocket ds = new DatagramSocket(10000); //监听10000端口
//定义数据包,用于存储数据
byte[] buf = new byte[1024];
DatagramPacket dp = new DatagramPacket(buf,buf.length);
ds.receive(dp);
String ip = dp.getAddress().getHostAddress(); //数据提取
String data = new String(dp.getData(),0,dp.getLength());
int port = dp.getPort();
System.out.println(data+"."+port+".."+ip);
ds.close();
}
}
JAVA_UDP发送端和接受端
最新推荐文章于 2024-04-11 21:30:00 发布