java.net
InetAddress类
方法:InetAddress address = InetAddress.getByName("主机名"); //主机名在局域网中可能重复
.getByName("192.168.1.1"); //ip地址是唯一的
UDP(DatagramSocket)
1.创建发送端Socket对象
DatagramSocket ds = new DatagramSocket();
2.创建数据并打包
String s = "hello udp ,im coming";
byte[] bys = s.getBytes();
int length = bys.length;
InetAddress address = InetAddress.getByName("主机名");
int port = 8888;
DatagramPacket dp = new DatagramPacket(bys,address,port);
3.发送数据
ds.send(dp);
4释放.
ds.close();
接收
1.创建
DatagramSocket ds = new DatagramSocket(8888);
2.byte[] bys = new byte[1024];
DatagramPacket dp = new DatagramPacket(bys,bys.length);
ds.receive(dp);// 阻塞
3.解析
InetAddress address = dp.getAddress();
byte[] data = dp.getData();
int length = dp.getLength();