Hi,
zuerst rufe ich das Programm mit dem Argument "Hallo \n" auf und dann ohne Argument. Es laufen also 2 Programme gleichzeitig.
Mit Argument wird gesendet; ohne Argument wird empfangen.
Habe den Code von nem Buch, aber er scheint nicht zu funktionieren:
Habe das ganze local getestet und der Autor meint auch, dass man im Internet sein muss, was ich auch bin.
Liebe Grüße
Reality
zuerst rufe ich das Programm mit dem Argument "Hallo \n" auf und dann ohne Argument. Es laufen also 2 Programme gleichzeitig.
Mit Argument wird gesendet; ohne Argument wird empfangen.
Code:
import java.net.*;
class WriteServer {
public static int serverPort = 666;
public static int clientPort = 999;
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 wird beendet.");
return;
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, p.getLength()));
}
}
public static void main(String[] args) throws Exception{
if(args.length == 1){
ds = new DatagramSocket(serverPort);
TheServer();
}
else{
ds = new DatagramSocket(clientPort);
TheClient();
}
}
}
Habe den Code von nem Buch, aber er scheint nicht zu funktionieren:
java.net.BindException: Address already in use: Cannot bind
at java.net.PlainDatagramSocketImpl.bind(Native Method)
at java.net.DatagramSocket.bind(DatagramSocket.java:368)
at java.net.DatagramSocket.<init>(DatagramSocket.java:210)
at java.net.DatagramSocket.<init>(DatagramSocket.java:261)
at java.net.DatagramSocket.<init>(DatagramSocket.java:234)
at WriteServer.main(WriteServer.java:49)
Exception in thread "main"
Habe das ganze local getestet und der Autor meint auch, dass man im Internet sein muss, was ich auch bin.
Liebe Grüße
Reality