next up previous contents index
Next: Random Access Dateien Up: Ein-/Ausgabe Previous: Byte-Ströme

Zeichen-Ströme

Zeichen-Ströme dienen zur Speicherung von Texten. Sie wurden in Java1.1   eingeführt.

Im Gegensatz zu den Byte-Strömen, die bis Java1.0 auch zur Zeichenausgabe verwendet wurden, garantieren die Zeichen-Strom-Klassen die korrekte Umsetzung von Unicode   gemäß der lokalen Gegebenheiten.

Zeichen-Eingabe-Ströme

 

Zeichen-Strom-Eingabe wird von der abstrakten Klasse Reader realisiert:

tex2html_wrap2401

Anwendung: Gepufferte Texteingabe

import java.io.*;
public class ReadLines
{ public static void main (String a[])
  { BufferedReader din = 
      new BufferedReader(
         new InputStreamReader(System.in));
    String line;
    do { try 
         { line = din.readLine();
         }
         catch(IOException ioe) 
           { break;
           }
         if (line == null) // end of stream
           break;
         System.out.println(line);
       }
    while (true);
  }
}

Anwendung: Texteingabe aus Strings

Die Klasse StringReader bietet die Standard-Funktionalität der Reader-Klassen, wobei die Lesequelle ein String ist.

import java.io.*;
class StrRead 
{ public static void main(String[] a) 
  throws IOException
  { StringReader inp = 
      new StringReader(a[0]);
      int c;
      while((c = inp.read()) != -1)
        System.out.println((char)c);
  }
}

Zeichen-Ausgabe-Ströme

  Zeichen-Strom-Ausgabe wird von der abstrakten Klasse Writer realisiert:

tex2html_wrap2403

Gepufferte Zeichenausgabe für die Grundtypen

  Die Klasse PrintWriter bietet Methoden für die Zeichenausgabe der Java-Grundtypen. Sie ersetzt in Java1.1   die Klasse PrintStream (siehe Seite gif).

import java.io.*;
class SquareList 
{ public static void main(String[] a) 
  throws IOException
  { PrintWriter out =
       new PrintWriter(
         new BufferedWriter(
           new FileWriter("square.list")));
    for (int i = 0; 
       i < Integer.parseInt(a[0]); 
       i++)
    { out.print(i);
      out.print(": ");
      out.println(Math.sqrt(i));
    }
  out.close();
  }
}


next up previous contents index
Next: Random Access Dateien Up: Ein-/Ausgabe Previous: Byte-Ströme

Peter Pfahler, 1997