| 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地址前有个空格,再编译就会成功。
 |