Java BufferedReader: Lesen einer Datei in Java anhand eines Beispiels

Inhaltsverzeichnis:

Anonim

Wie lese ich eine Datei in Java?

Java bietet verschiedene Mechanismen zum Lesen aus der Datei. Das nützlichste Paket, das hierfür bereitgestellt wird, ist java.io.Reader. Diese Klasse enthält die Klasse Java BufferedReader unter dem Paket java.io.BufferedReader

Was ist BufferedReader in Java?

BufferedReader ist eine Java-Klasse, die den Text aus einem Eingabestream (wie einer Datei) liest, indem Zeichen gepuffert werden, die Zeichen, Arrays oder Zeilen nahtlos lesen. Im Allgemeinen bewirkt jede Leseanforderung eines Lesers, dass eine entsprechende Leseanforderung des zugrunde liegenden Zeichens oder Bytestroms gestellt wird.

Es ist daher ratsam, BufferedReader in Java um jeden Reader zu wickeln, dessen read () -Operationen kostspielig sein können, z. B. Java FileReaders und InputStreamReaders. Eine typische Verwendung besteht darin, den Dateipfad wie folgt an den BufferedReader in Java zu übergeben:

objReader = new BufferedReader(new FileReader("D:\DukesDiary.txt"));//Assuming you have a text file in D drive

Dadurch wird Ihre Datei im Grunde genommen in den objReader geladen. Jetzt müssen Sie den Inhalt der Datei durchlaufen und drucken.

Die while-Schleife im folgenden Code liest die Datei, bis das Dateiende erreicht ist

while ((strCurrentLine = objReader.readLine()) != null) {System.out.println(strCurrentLine);}

strCurrentLine liest die aktuelle Zeile und die Java readLine-Funktion objReader.readLine () gibt eine Zeichenfolge zurück. Daher iteriert die Schleife, bis sie nicht null ist.

BufferedReader Beispiel:

Der folgende Code enthält ein Java BufferedReader-Beispiel, das die vollständige Implementierung zeigt:

import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;public class ReadFileExample {public static void main(String[] args) {BufferedReader objReader = null;try {String strCurrentLine;objReader = new BufferedReader(new FileReader("D:\\DukesDiary.txt"));while ((strCurrentLine = objReader.readLine()) != null) {System.out.println(strCurrentLine);}} catch (IOException e) {e.printStackTrace();} finally {try {if (objReader != null)objReader.close();} catch (IOException ex) {ex.printStackTrace();}}}}

Hinweis:

Der obige Code enthält einige sehr wichtige Handhabungen, insbesondere im letzten Block des Codes.

Dieser Code stellt sicher, dass die Speicherverwaltung effizient durchgeführt wird und die Methode objReader.close () aufgerufen wird, die den Speicher freigibt.

BufferedReader JDK7 Beispiel:

Unten finden Sie ein Beispiel für Java-Lesedateien mit der BufferedReader-Klasse

import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;public class ReadFileExample_jdk7 {private static final String FILENAME = "D:\\DukesDiary.txt";public static void main(String[] args) {try (BufferedReader br = new BufferedReader(new FileReader(FILENAME))) {String strCurrentLine;while ((strCurrentLine = br.readLine()) != null) {System.out.println(strCurrentLine);}} catch (IOException e) {e.printStackTrace();}}}