inputstream und bufferedwirter /outputstream und bufferedwriter

berserkerdq2

Bekanntes Mitglied
Hi, ich habe mich gefragt, was für einen Unterschied es überhaupt macht, wenn ich die beiden nutze? Der eine nutzt bits, soweit ich verstanden habe und der andere liest direkt zeichen ein, aber in der Praxis macht es keinen Unterschied oder? ALso was man von beidem verwendet?
 
Beste Antwort
Keine Ahnung ehrlich gesagt, ist ja nicht als asciicode definiert, kann es dann sien, dass inputstream und outputstream utf 8 nutzen?
Streams nutzen nur Bytes, d.h. Du musst Ihnen die Bytes, die diese schreiben sollen, geben.
Writer sind Textbasiert. So das Ziel kein fetses Encoding hat, dann kann man ein Encoding frei wählen. Beispiele: StringWriter nutzt String, hat intern ein festes Encoding. Aber OutputStreamWriter kannst Du ein Encoding deiner Wahl mitgeben.

Encoding ist das, was beschreibt, wie etwas abgespeichert werden soll.
Keine Ahnung ehrlich gesagt, ist ja nicht als asciicode definiert, kann es dann sien, dass inputstream und outputstream utf 8 nutzen?
Streams nutzen nur Bytes, d.h. Du musst Ihnen die Bytes, die diese schreiben sollen, geben.
Writer sind Textbasiert. So das Ziel kein fetses Encoding hat, dann kann man ein Encoding frei wählen. Beispiele: StringWriter nutzt String, hat intern ein festes Encoding. Aber OutputStreamWriter kannst Du ein Encoding deiner Wahl mitgeben.

Encoding ist das, was beschreibt, wie etwas abgespeichert werden soll.
 
Beste Antwort
Keine Ahnung ehrlich gesagt, ist ja nicht als asciicode definiert, kann es dann sien, dass inputstream und outputstream utf 8 nutzen?

Nö. Streams schreiben Byte. Das heißt, die kennen keine Zeichen sondern schreiben Bytes. Das heißt du musst entscheiden, wie du Zeichen konvertieren willst. Ob UTF-8, UTF-16, ISO-8859-15 oder wie auch immer.

Ein Writer hingegen hat die Logik eingebaut (entweder inhärent als UTF-8 meist oder als explizite Übergabe)
 

Zurück
Oben