import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
public class UdpDemo {
public static void main(String[] args) throws Exception{
//创建UdpSocket服务
DatagramSocket ds=new DatagramSocket();
//创建数据包用于存贮数据
byte[] info="ni hao me".getBytes();
DatagramPacket dp=new DatagramPacket(info,info.length,InetAddress.getByName("192.168.1.101"),10001);
//发送
ds.send(dp);
//记得关闭资源
ds.close();
}
}
class UdpRece
{
public static void main(String[] args) throws Exception
{
//创建UdpSocket服务,并制定监听端口
DatagramSocket ds=new DatagramSocket(10001);
//定义数据包用来存贮数据,因为数据包中有更多的功能来提取数据;
byte[] info=new byte[1024];
DatagramPacket dp=new DatagramPacket(info,info.length);
//接收数据包
ds.receive(dp);
//通过数据包中的方法获取信息
String str=new String(dp.getAddress().getHostAddress());//获取ip;
String infos=new String(dp.getData(),0,dp.getLength());//获取内容
ds.close();//关闭资源
System.out.println(str);
System.out.println(infos);
}
}
|