Der Konstruktor der Klasse InputStreamReader erwartet
als Argument ein Exemplar der Klasse InputStream.
Über die Methoden der Klasse InputStreamReader kann man
dann anschließend Unicode-zeichenweise auf die Byte-Daten,
die der InputStream liefert, zugreifen:
InputStreamReader in =
new InputStreamReader(System.in);
Den umgekehrten Effekt bewirkt ein zwischengeschalteter
OutputStreamWriter. Ihm werden Unicode-Zeichen zum
Schreiben übergeben, die automatisch in ihre
Byte-Repräsentation umgewandelt werden:
OutputStreamWriter out =
new OutputStreamWriter(System.out);
Der Umweg über diese Adapterklassen stellt in Java die einzige
Möglichkeit dar, Ein- und Ausgaben, die über die Standard-Streams
verarbeitet werden, direkt in Unicode umzuwandeln bzw. Unicode-Zeichen
direkt in die plattformabhängige Zeichenkodierung zu überführen.