/*
* Компилиpовать: javac udp.java
* Запускать клиента: java WriteServer 1
* Запускать сервер: java WriteServer
* JDK 1.1.5
*/
import java.net.*;
class WriteServer {
public static int serverPort = 444;
public static int clientPort = 555;
public static int buffer_size = 1024;
public static DatagramSocket ds;
public static byte buffer[] = new byte[buffer_size];
public static void TheServer() throws Exception {
int pos = 0;
while (true) {
int c = System.in.read();
switch (c) {
case -1:
System.out.println("Server quits.");
case '\r':
break;
case '\n':
ds.send(new DatagramPacket(buffer, pos,
InetAddress.getLocalHost(), clientPort));
pos = 0;
break;
default:
buffer[pos++] = (byte) c;
}
}
}
public static void TheClient() throws Exception {
while(true) {
DatagramPacket p = new DatagramPacket(buffer, buffer.length);
ds.receive(p);
System.out.println(new String(p.getData(),0,0,p.getLength()));
}
}
public static void main(String a[]) throws Exception {
if(a.length == 1) {
ds = new DatagramSocket(serverPort);
TheServer();
} else {
ds = new DatagramSocket(clientPort);
TheClient();
}
}
}