//数据接收端
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
public class Father {
public static void main(String[] args) throws IOException {
while(true){
DatagramSocket datagramSocket = new DatagramSocket(54645);
byte[] bys=new byte[1024];
DatagramPacket datagramPacket = new DatagramPacket(bys, bys.length);
datagramSocket.receive(datagramPacket);
System.out.println("接收到的数据是:"+new String(datagramPacket.getData(),0,datagramPacket.getLength()));
}
}
/*public void eat()throws FatException{}*/
}
//数据发送端
public Daughter{ public static void main(String[] args) throws IOException, ParseException, ClassNotFoundException {
DatagramSocket datagramSocket = new DatagramSocket();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in),1024);
String line;
while((line=bufferedReader.readLine())!=null)
{
if("886".equals(line))
{
break;
}
byte[] bys=line.getBytes();
DatagramPacket datagramPacket = new DatagramPacket(bys, bys.length, InetAddress.getByName("10.40.193.31"), 54645);
datagramSocket.send(datagramPacket);
}
datagramSocket.close();
}
}
接收端只能接受一个数据,然后就会抛出BindException 我改了端口号还是不行