Aktionen

FileReader-Klasse

Aus Java Tutorial - Java lernen

Diese Klasse erbt von der InputStreamReader-Klasse. FileReader wird zum Lesen von Zeichenströmen verwendet.

Diese Klasse verfügt über mehrere Konstruktoren zum Erstellen der erforderlichen Objekte. Im Folgenden finden Sie eine Liste der von der FileReader-Klasse bereitgestellten Konstruktoren.

Nummer Konstruktor Beschreibung
1 FileReader(File file) Dieser Konstruktor erstellt einen neuen FileReader, dem die Datei zum Lesen übergeben wird.
2 FileReader(FileDescriptor fd) Dieser Konstruktor erstellt einen neuen FileReader, dem der FileDescriptor zum Lesen mitgegeben wird.
3 FileReader(String fileName) Dieser Konstruktor erstellt einen neuen FileReader, dem der Name der Datei gegeben wird, aus der gelesen werden soll.

Sobald Sie das FileReader-Objekt in der Hand haben, gibt es eine Liste von Hilfsmethoden, die zur Manipulation der Dateien verwendet werden können.

Nummer Methode Beschreibung
1 public int read() throws IOException Liest ein einzelnes Zeichen. Gibt einen int zurück, der das gelesene Zeichen darstellt.
2 public int read(char [] c, int offset, int len) Liest Zeichen in ein Array ein. Gibt die Anzahl der gelesenen Zeichen zurück.

Beispiel

Es folgt ein Beispiel zur Demonstration der Klasse:

import java.io.*;
public class FileRead {

   public static void main(String args[])throws IOException {
      File file = new File("Hello1.txt");
      
      // erstellt die Datei
      file.createNewFile();
      
      // erzeugt ein FileWriter-Objekt
      FileWriter writer = new FileWriter(file); 
      
      // Schreibt den Inhalt in die Datei
      writer.write("This\n is\n an\n example\n"); 
      writer.flush();
      writer.close();

      // Erstellt ein FileReader-Objekt
      FileReader fr = new FileReader(file); 
      char [] a = new char[50];
      fr.read(a);   // liest den Inhalt in das Array ein
      
      for(char c : a)
         System.out.print(c);   // gibt die Zeichen nacheinander aus
      fr.close();
   }
}

Dies wird zu folgendem Ergebnis führen:

Ausgabe

This
is
an
example