hallöchen,
da mir so gut geholfen wurde das letzte mal denk ich.. könnte man mir hier nochmal gut helfen
Ich verbinde mich mit einem SMTP server.
Ich verschicke befehle mittels PrintWriter und lese die daten dann anhand eines BufferedReaders.
Mit der methode readLine() bekomme ich die daten, bis hier ist alles okay.
Mein Problem ist folgendes:
Wenn ich einen Befehl an den Server schicke, z.b. HELP dann werden immer unterschiedlich viele Zeilen geschickt. Wenn ich die Anzahl der Zeilen, die zurück kommen weiß, dann mach ich z.B.
Ich wollte jetzt eine Methode schreiben, welche mir alle zeilen liefert, die der Server schickt.
Das Problem ist das readLine() solange blockiert, bis daten vom server ankommen.
Wenn ich, mal angenommen:
mache, dann bleibt mein programm stecken.
Nachdem die letzte Zeile geschickt wurde vom server wir in meiner while () Schleife nochmal readLine() ausgeführt. Da aber der Server nichts mehr sendet, bzw. alles gesendet hat,
blockiert diese methode mein ganzes programm.
Wie kann ich nun alle zeilen auslesen, die der SMTP server mir sendet?
Grüße
Johnny
da mir so gut geholfen wurde das letzte mal denk ich.. könnte man mir hier nochmal gut helfen
Ich verbinde mich mit einem SMTP server.
Ich verschicke befehle mittels PrintWriter und lese die daten dann anhand eines BufferedReaders.
Mit der methode readLine() bekomme ich die daten, bis hier ist alles okay.
Mein Problem ist folgendes:
Wenn ich einen Befehl an den Server schicke, z.b. HELP dann werden immer unterschiedlich viele Zeilen geschickt. Wenn ich die Anzahl der Zeilen, die zurück kommen weiß, dann mach ich z.B.
Java:
String temp1 = in.readLine();
String temp2 = in.readLine();
..
Ich wollte jetzt eine Methode schreiben, welche mir alle zeilen liefert, die der Server schickt.
Das Problem ist das readLine() solange blockiert, bis daten vom server ankommen.
Wenn ich, mal angenommen:
Java:
String temp = in.readLine();
while (temp != null) {
....
temp = in.readLine();
}
mache, dann bleibt mein programm stecken.
Nachdem die letzte Zeile geschickt wurde vom server wir in meiner while () Schleife nochmal readLine() ausgeführt. Da aber der Server nichts mehr sendet, bzw. alles gesendet hat,
blockiert diese methode mein ganzes programm.
Wie kann ich nun alle zeilen auslesen, die der SMTP server mir sendet?
Grüße
Johnny