import java.net.InetAddress;
public class shangji1201 {
public static void main(String[] args) throws Exception{
InetAddress localAddress = InetAddress.getLocalHost();
InetAddress remoteAddress = InetAddress.getByName("www.oracle.com");
System.out.println("本机的IP地址:" + localAddress.getHostAddress());
System.out.println("本机的主机名:" + localAddress.getHostName());
System.out.println("甲骨文公司主机的IP地址:" + remoteAddress.getHostAddress());
}
}
发送端:
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
public class shangji1201send {
public static void main(String[] args) throws Exception{
DatagramSocket ds=new DatagramSocket(3000);
String str="Hello World";
byte[] buf=new byte[1024];
DatagramPacket dp=new DatagramPacket(str.getBytes(), str.length(),InetAddress.getByName("localhost"),8001);
DatagramPacket dp2=new DatagramPacket(buf, 1024);
System.out.println("发送信息");
ds.send(dp);
System.out.println("发送成功!");
System.out.println("等待回应!");
ds.receive(dp2);
System.out.println("收到来自" + dp2.getAddress().getHostAddress()+":"+dp2.getPort() + "的回应:");
String str2=new String(dp2.getData(), 0, dp2.getLength());
System.out.println(str2);
ds.close();
}
}
接收端:
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
public class shangji1202receive {
public static void main(String[] args) throws IOException
{
String str2="OK!";
DatagramPacket dp2=new DatagramPacket(str2.getBytes(), str2.length(), InetAddress.getByName("localhost"),3000);
byte[] buf=new byte[1024];
DatagramSocket ds=new DatagramSocket(8001);
DatagramPacket dp=new DatagramPacket(buf, 1024);
System.out.println("等待接受数据中:");
System.out.println("接收到来自");
ds.receive(dp);
System.out.println(dp.getAddress().getHostAddress()+":"+dp.getPort() + "的数据:");
String str=new String(dp.getData(), 0, dp.getLength());
System.out.println(str);
System.out.println("接收成功!");
ds.send(dp2);
ds.close();
}
}



