Server.java
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
public class Server {
/**
* @param args
*/
public static void main(String[] args) {
try {
DatagramSocket server = new DatagramSocket(6000);
byte[] recvBuf = new byte[100];
DatagramPacket recvPacket = new DatagramPacket(recvBuf , recvBuf.length);
while(true){
server.receive(recvPacket);
String recvStr = new String(recvPacket.getData() , 0 , recvPacket.getLength());
if(recvStr.equals("quit")){
return;
}
System.out.println("received from "+ recvPacket.getAddress() +":" + recvStr);
}
} catch (SocketException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Client.java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
import java.net.UnknownHostException;
public class Client {
/**
* @param args
*/
public static void main(String[] args) {
try {
DatagramSocket client = new DatagramSocket();
while(true){
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = null;
while((str = br.readLine()) != null){
byte[] sendBuf = str.getBytes();
InetAddress addr = InetAddress.getByName("172.20.15.22");
int port = 6000;
DatagramPacket sendPacket = new DatagramPacket(sendBuf ,sendBuf.length , addr , port);
client.send(sendPacket);
if(str.equals("quit")){
client.disconnect();
return;
}
}
}
} catch (SocketException e) {
e.printStackTrace();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}