English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Tutorial werden wir anhand eines Beispiels die Java-Reader, ihre Unterklassen und ihre Methoden kennenlernen.
Die Klasse Reader in dem Java-Paket java.io ist eine abstrakte Oberklasse, die Zeichencode-Ströme darstellt.
Da Reader eine abstrakte Klasse ist, spielt er selbst keine Rolle. Seine Unterklassen können jedoch zum Lesen von Daten verwendet werden.
Um die Funktionen von Reader zu nutzen, können wir seine Unterklassen verwenden. Einige davon sind:
Im nächsten Tutorial werden wir alle diese Unterklassen lernen.
Um einen Reader zu erstellen, müssen wir zunächst das Paket java.io.Reader importieren. Nach dem Importieren des Pakets können wir einen Reader erstellen.
// Reader erstellen Reader input = new FileReader();
Hier erstellen wir einen Reader mit der Klasse FileReader. Dies liegt daran, dass Reader eine abstrakte Klasse ist. Daher können wir keine Objekte von Reader erstellen.
Beachtung:Wir können auch ReaderReader von anderen Unterklasse erstellen.
Diese Reader-Klasse bietet Methoden, die von ihren Unterklassen unterschiedlich implementiert werden. Hier sind einige gängige Methoden:
ready(); - Überprüfen, ob der Reader bereit ist, zu lesen
read(char[] array) - Lesen von Zeichen aus dem Stream und Speichern im angegebenen Array
read(char[] array, int start, int length)- Lesen von Zeichen mit der gleichen Länge wie length aus dem Stream und Speichern im angegebenen Array beginning bei start
mark(); - Position der gelesenen Daten im Stream markieren
reset(); - Stream zurücksetzen. Wenn der Stream markiert wurde, versuchen Sie, ihn zu markieren, um neu zu positionieren. Wenn der Stream nicht markiert wurde, versuchen Sie, ihn in einem bestimmten Stream zurückzusetzen, z.B. indem Sie ihn auf seinen Ausgangspunkt zurückpositionieren.
skip(); -Zeilen aus dem Stream weglassen
So implementieren wir Methoden von Reader mit der Klasse FileReader.
Angenommen, wir haben eine Datei namensinput.txtDatei, die folgende Inhalte enthält.
This is a line of text inside the file.
Lassen Sie uns versuchen, den Reader mit FileReader (eine Unterklasse von Reader) zum Lesen dieser Datei zu verwenden.
import java.io.Reader; import java.io.FileReader; class Main { public static void main(String[] args) { // Erstellen eines Zeichenarrays char[] array = new char[100]; try { //Einen Reader mit FileReader erstellen Reader input = new FileReader("input.txt"); //Überprüfen, ob der Reader bereit ist System.out.println("Gibt es Daten im Stream? "); + input.ready()); //Lesen eines Zeichens input.read(array); System.out.println("Daten im Stream:"); System.out.println(array); // Reader schließen input.close(); } catch(Exception e) { e.getStackTrace(); } } }
Ausgaberesultat
Gibt es Daten im Stream? true Daten im Stream: This is a line of text inside the file.
Im obigen Beispiel haben wir einen Leser mit der FileReader-Klasse erstellt. Reader und Dateiinput.txtVerknüpfung.
Reader input = new FileReader("input.txt");
Um voninput.txtDatei-Leseoperationen, wir haben diese Methoden bereits implementiert.
input.read(); //Daten aus Reader lesen input.close(); //Reader schließen