Hallo liebe Community,
seit etwa drei Stunden versuche ich heraus zu finden, warum ich über eine URL-Connection nur dann den kompletten Text einer Webseite auslesen kann, wenn ich readLine-Funktionen z.B. aus BufferedReader oder DataInputStream benutze. Und selbst über so Primitive wie:
bekomme ich nicht alle Bytes (1 Zeichen = 1 Byte) der Webseite. Da kann ich den byte-buffer bis ins unendliche dehnen.
Was dagegen seltsamer weise funktioniert ist:
und Gleiches mit DataInputStream.
Und folgendes zerhaut irgendwie Stellenweise den Text, vermutlich weil 1 Byte doch nicht ein Zeichen ist.
Kann mir jemand sagen, wie die Byte-Ausgabe kodiert ist oder welchen Reader bzw. Zeichensatz ich darauf anwenden muss?
Gruß,
Nic*
seit etwa drei Stunden versuche ich heraus zu finden, warum ich über eine URL-Connection nur dann den kompletten Text einer Webseite auslesen kann, wenn ich readLine-Funktionen z.B. aus BufferedReader oder DataInputStream benutze. Und selbst über so Primitive wie:
Java:
buffer_start = in.read(bbuffer,buffer_start,buffer.length - buffer_start);
Was dagegen seltsamer weise funktioniert ist:
Java:
br = new BufferedReader(new InputStreamReader(url_connection.getInputStream())); for(;;)br.readLine()
Und folgendes zerhaut irgendwie Stellenweise den Text, vermutlich weil 1 Byte doch nicht ein Zeichen ist.
Java:
dis = new DataInputStream(url_connection.getInputStream());
while((dis.read(bbuffer)) != -1) new String(bbuffer);
Kann mir jemand sagen, wie die Byte-Ausgabe kodiert ist oder welchen Reader bzw. Zeichensatz ich darauf anwenden muss?
Gruß,
Nic*