public static void main(String[] args)throws Exception {
DatagramSocket d=new DatagramSocket();//建立UDP服务
byte[] b="今天好开心啊".getBytes();
DatagramPacket ds=new DatagramPacket(b,b.length,InetAddress.getByName("10.0.5.109"),10000);
d.close();
}
方法使用错误,
public DatagramPacket(byte[] buf,
int length,
InetAddress address,
int port)构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。length 参数必须小于等于 buf.length。
参数:
buf - 包数据。
length - 包长度。
address - 目的地址。
port - 目的端口号。
这句话中InetAddress.getAllByName(" 10.0.5.109"),返回的是InetAddress数组,应该改成InetAddress.getByName(" 10.0.5.109"),
另外你的ip地址前有个空格,再编译就会成功。 |