ich hab hier ein problem.
ich hab einen BufferedReader. Der wird gefüllt, mit nem InputStream von nem socket.
jetzt versuche ich hier eine methode zu schreiben, die folgendes leistet:
wenn in "in" etwas ist, soll es ausgelesen und weiter verarbeitet werden.
wenn nichts drin ist, dann soll nix passieren.
ich versuche das seit 2 tage auf die Reihe zu bekommen.
Mein erster versuch war:
das hat nicht gemacht, was ich wollte
dann bin ich auf diese ready() Methode gestoßen und hab es so versucht:
aber das Problem ist:
wenn ich in.ready() benutze, bekomm ich IMMER false.
wenn ich es aber dann ausgebe via System.out.println, bekomm ich den string, den der host geschickt hat.
wo ist mein Fehler?
ich hab einen BufferedReader. Der wird gefüllt, mit nem InputStream von nem socket.
Code:
this.socket = new Socket(host, port); .
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
jetzt versuche ich hier eine methode zu schreiben, die folgendes leistet:
wenn in "in" etwas ist, soll es ausgelesen und weiter verarbeitet werden.
wenn nichts drin ist, dann soll nix passieren.
ich versuche das seit 2 tage auf die Reihe zu bekommen.
Mein erster versuch war:
Code:
if (in.readLine != null)
System.out.println(in.readLine());
dann bin ich auf diese ready() Methode gestoßen und hab es so versucht:
Code:
if (in.ready() == true)
System.out.println(in.readLine());
aber das Problem ist:
wenn ich in.ready() benutze, bekomm ich IMMER false.
wenn ich es aber dann ausgebe via System.out.println, bekomm ich den string, den der host geschickt hat.
wo ist mein Fehler?