Java FileReader (mit Beispielen)

In diesem Tutorial lernen wir anhand von Beispielen Java FileReader und seine Methoden kennen.

Die FileReaderKlasse des java.ioPakets kann zum Lesen von Daten (in Zeichen) aus Dateien verwendet werden.

Es erweitert die InputSreamReaderKlasse.

Stellen Sie FileReadersicher, dass Sie sich mit der Java-Datei vertraut machen, bevor Sie etwas darüber erfahren .

Erstellen Sie einen FileReader

Um einen Dateireader zu erstellen, müssen wir java.io.FileReaderzuerst das Paket importieren . Sobald wir das Paket importiert haben, können wir den Dateireader wie folgt erstellen.

1. Verwenden Sie den Namen der Datei

 FileReader input = new FileReader(String name); 

Hier haben wir einen Dateireader erstellt, der mit der durch den Namen angegebenen Datei verknüpft wird.

2. Verwenden eines Objekts der Datei

 FileReader input = new FileReader(File fileObj); 

Hier haben wir einen Dateireader erstellt, der mit der durch das Objekt der Datei angegebenen Datei verknüpft wird.

Im obigen Beispiel werden die Daten in der Datei unter Verwendung einer Standardzeichencodierung gespeichert.

Seit Java 11 können wir jedoch auch die Art der Zeichenkodierung ( UTF-8 oder UTF-16 ) in der Datei angeben .

 FileReader input = new FileReader(String file, Charset cs); 

Hier haben wir die CharsetKlasse verwendet, um die Zeichenkodierung des Dateireaders anzugeben.

Methoden von FileReader

Die FileReaderKlasse bietet Implementierungen für verschiedene in der ReaderKlasse vorhandene Methoden .

read () Methode

  • read() - liest ein einzelnes Zeichen vom Leser
  • read(char() array) - liest die Zeichen aus dem Reader und speichert sie im angegebenen Array
  • read(char() array, int start, int length) - liest die Anzahl der Zeichen, die der Länge entsprechen, vom Lesegerät und speichert sie ab dem Positionsstart im angegebenen Array

Angenommen, wir haben eine Datei mit dem Namen input.txt mit dem folgenden Inhalt.

 This is a line of text inside the file. 

Versuchen wir, die Datei mit zu lesen FileReader.

 import java.io.FileReader; class Main ( public static void main(String() args) ( // Creates an array of character char() array = new char(100); try ( // Creates a reader using the FileReader FileReader input = new FileReader("input.txt"); // Reads characters input.read(array); System.out.println("Data in the file: "); System.out.println(array); // Closes the reader input.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Ausgabe

 Daten in der Datei: Dies ist eine Textzeile in der Datei. 

Im obigen Beispiel haben wir einen Dateireader mit dem Namen input erstellt. Der Dateireader ist mit der Datei input.txt verknüpft .

 FileInputStream input = new FileInputStream("input.txt"); 

Um Daten aus der Datei zu lesen, haben wir die read()Methode verwendet.

getEncoding () -Methode

Die getEncoding()Methode kann verwendet werden, um den Codierungstyp abzurufen, der zum Speichern von Daten in der Datei verwendet wird. Beispielsweise,

 import java.io.FileReader; import java.nio.charset.Charset; class Main ( public static void main(String() args) ( try ( // Creates a FileReader with default encoding FileReader input1 = new FileReader("input.txt"); // Creates a FileReader specifying the encoding FileReader input2 = new FileReader("input.txt", Charset.forName("UTF8")); // Returns the character encoding of the file reader System.out.println("Character encoding of input1: " + input1.getEncoding()); System.out.println("Character encoding of input2: " + input2.getEncoding()); // Closes the reader input1.close(); input2.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Ausgabe

 Die Zeichenkodierung von Eingabe1: Cp1252 Die Zeichenkodierung von Eingabe2: UTF8 

Im obigen Beispiel haben wir zwei Dateireader mit den Namen input1 und input2 erstellt.

  • input1 gibt die Zeichenkodierung nicht an. Daher gibt die getEncoding()Methode die Standardzeichenkodierung zurück.
  • input2 gibt die Zeichenkodierung UTF8 an . Daher gibt die getEncoding()Methode die angegebene Zeichenkodierung zurück.

Hinweis : Wir haben die Charset.forName()Methode verwendet, um den Typ der Zeichenkodierung anzugeben. Weitere Informationen finden Sie unter Java Charset (offizielle Java-Dokumentation).

close () Methode

Um den Dateireader zu schließen, können wir die close()Methode verwenden. Sobald die close()Methode aufgerufen wurde, können wir den Leser nicht mehr zum Lesen der Daten verwenden.

Andere Methoden von FileReader

Methode Beschreibung
ready() prüft, ob der Dateireader zum Lesen bereit ist
mark() Markieren Sie die Position im Dateireader, bis zu der Daten gelesen wurden
reset() Bringt das Steuerelement an den Punkt im Lesegerät zurück, an dem die Markierung gesetzt wurde

Weitere Informationen finden Sie unter Java FileReader (offizielle Java-Dokumentation).

Interessante Beiträge...