DatagramPacket
JavaでDatagramSocket
クラスを使用して単純な文字列を受信しようとしています。
これが私のコードです:
public static void main(String [] args){
DatagramSocket aSocket = null;
try{
aSocket= new DatagramSocket();
String aMessage = "my message";
System.out.println("1");
byte [] m = aMessage.getBytes();
InetAddress aHost = InetAddress.getByName("localhost");
int serverPort = 6789;
DatagramPacket request = new DatagramPacket(m,aMessage.length(),aHost,serverPort);
System.out.println("2");
aSocket.send(request);
System.out.println("3");
byte [] buffer = new byte[1000];
System.out.println("4");
DatagramPacket reply = new DatagramPacket(buffer,buffer.length);
aSocket.receive(reply);
System.out.println("5");
System.out.println("DATA RECEIVED" + reply.getData());
aSocket.close();
}
catch(SocketException ex){
ex.printStackTrace();
}
catch(IOException ioe){
ioe.printStackTrace();
}
}
受信したデータを印刷していません。コードが実行される場所を確認するためだけに配置System.out.println
しましたが、4 で停止し、5 を出力しません。これは、問題が 4 のすぐ下にあることを意味します。なぜデータを受信していないのですか?