English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Tutorial lernen wir durch Beispiele Java BufferedReader und seine Methoden kennen.
Der BufferedReader-Klasse in java.io-Paket kann mit anderen Lesern zusammen verwendet werden, um Daten effizienter zu lesen (in Form von Zeichen).
Es hat die abstrakte Klasse Reader geerbt.
BufferedReader unterhält einen internenvon8192Zeichenpuffer
Während des Lesevorgangs im BufferedReader werden einige Zeichen von der Festplatte gelesen und im internen Puffer gespeichert. Und Zeichen werden einzeln aus dem internen Puffer gelesen.
Dadurch wird die Anzahl der Kommunikationen mit der Festplatte reduziert. Dies ist der Grund, warum das Lesen von Zeichen mit BufferedReader schneller geht.
Um einen BufferedReader zu erstellen, müssen wir zunächst das Paket java.io.BufferedReader importieren. Nach dem Importieren des Pakets können Sie den Leser erstellen.
//Erstellen Sie einen FileReader FileReader file = new FileReader(String file); //Erstellen Sie einen BufferedReader BufferedReader buffer = new BufferedReader(file);
In diesem Beispiel haben wir einen namens "buffer"en BufferedReader und einen namens "file"en FileReader erstellt.
Hier ist die Standardgröße des internen Puffers von BufferedReader8192Zeichen. Aber wir können auch die Größe des internen Puffers angeben.
//Erstellen Sie einen BufferedReader mit einer angegebenen Größe des internen Puffers BufferedReader buffer = new BufferedReader(file, int size);
Der Puffer hilft dabei, schneller aus der Datei zu lesen.
Die BufferedReader-Klasse bietet Implementierungen für verschiedene Methoden in Reader.
read() - Lesen Sie ein einzelnes Zeichen aus dem internen Puffer des Lesers
read(char[] array) - Lesen Sie Zeichen aus dem Leser und speichern Sie sie im angegebenen Array
read(char[] array, int start, int length)- Lesen Sie eine Anzahl von Zeichen gleich der Länge aus dem Leser und speichern Sie sie ab dem Startposition in dem angegebenen Array
Zum Beispiel,angenommen, wir haben eine Datei namensinput.txtDatei, die den folgenden Inhalt enthält.
Dies ist eine Zeile Text innerhalb der Datei.
Lassen Sie uns versuchen, die Datei mit BufferedReader zu lesen.
import java.io.FileReader; import java.io.BufferedReader; class Main { public static void main(String[] args) { //Erstellen Sie ein Zeichendarstellung char[] array = new char[100]; try { //Erstellen Sie einen FileReader FileReader file = new FileReader("input.txt"); //Erstellen Sie einen BufferedReader BufferedReader input = new BufferedReader(file); //Lesen von Zeichen input.read(array); System.out.println("Daten in der Datei: "); System.out.println(array); //Leser schließen input.close(); } catch(Exception e) { e.getStackTrace(); } } }
Ausgaberesultat
Daten in der Datei: Dies ist eine Zeile Text innerhalb der Datei.
In dem obigen Beispiel haben wir einen namens input-bufferedReader erstellt. Der Pufferleser ist mitinput.txtDateiverknüpfung.
FileReader file = new FileReader("input.txt"); BufferedReader input = new BufferedReader(file);
Hier verwenden wir die Methode read(), um ein Zeichenarray aus dem internen Puffer des Pufferspeichers zu lesen.
Um eine bestimmte Anzahl von Zeichen zu überspringen und zu ignorieren, können Sie die Methode skip() verwenden. Zum Beispiel
import java.io.FileReader; import java.io.BufferedReader; public class Main { public static void main(String args[]) { //Erstellen Sie ein Zeichendarstellung char[] array = new char[100]; try { //Angenommen, die Datei input.txt enthält den folgenden Text //Dies ist eine Zeile Text innerhalb der Datei. FileReader file = new FileReader("input.txt"); //Erstellen Sie einen BufferedReader BufferedReader input = new BufferedReader(file); //Überspringen5Zeichen input.skip(5); //Lesen von Zeichen input.read(array); System.out.println("Überspringen}}5Zeichen hinter den Daten:"); System.out.println(array); //Leser schließen input.close(); } catch (Exception e) { e.getStackTrace(); } } }
Ausgaberesultat
Überspringen5Zeichen hinter den Daten: ist ein Zeilentext innerhalb der Datei.
Im obigen Beispiel haben wir die skip()-Methode verwendet, um aus dem Dateileser zu lesen5Zeichen. Daher werden die Zeichen 'T', 'h', 'i', 's' und ' ' aus dem ursprünglichen Datei übersprungen.
Um einen Leser zu schließen, können wir den close()-Methodenaufruf verwenden. Nach dem Aufruf von close() können wir den Leser nicht mehr zum Lesen von Daten verwenden.
Methode | Beschreibung |
---|---|
ready() | Überprüfen Sie, ob der Dateileser bereit ist, zu lesen |
mark() | Position des gelesenen Datenstandorts im Markierungsleser |
reset() | Markierung zurücksetzen, zum Lesepunkt zurückkehren, der im Leser gesetzt wurde |