Classe de lecteur Java
Classe de lecteur Java
Dans ce tutoriel, nous allons découvrir Java Reader, ses sous-classes et ses méthodes à l'aide d'un exemple.
Le Reader
classe du java.io
package est une superclasse abstraite qui représente un flux de caractères.
Depuis Reader
est une classe abstraite, elle n'est pas utile en elle-même. Cependant, ses sous-classes peuvent être utilisées pour lire des données.
Sous-classes de Reader
Pour utiliser la fonctionnalité de Reader
, nous pouvons utiliser ses sous-classes. Certains d'entre eux sont :
- BufferedReader
- InputStreamReader
- FileReader
- Lecteur de chaînes
Nous découvrirons toutes ces sous-classes dans le prochain tutoriel.
Créer un lecteur
Pour créer un Reader
, il faut importer le java.io.Reader
paquet d'abord. Une fois le package importé, voici comment créer le lecteur.
// Creates a Reader
Reader input = new FileReader();
Ici, nous avons créé un lecteur utilisant le FileReader
classer. C'est parce que Reader
est une classe abstraite. Par conséquent, nous ne pouvons pas créer un objet de Reader
.
Remarque :Nous pouvons également créer des lecteurs à partir d'autres sous-classes de Reader
.
Méthodes de lecture
Le Reader
fournit différentes méthodes qui sont implémentées par ses sous-classes. Voici quelques-unes des méthodes couramment utilisées :
ready()
- vérifie si le lecteur est prêt à être luread(char[] array)
- lit les caractères du flux et les stocke dans le tableau spécifiéread(char[] array, int start, int length)
- lit le nombre de caractères égal à longueur à partir du flux et stocke dans le tableau spécifié à partir du débutmark()
- marque la position dans le flux jusqu'à laquelle les données ont été luesreset()
- renvoie le contrôle au point du flux où la marque est définieskip()
- supprime le nombre spécifié de caractères du flux
Exemple :lecteur utilisant FileReader
Voici comment nous pouvons implémenter Reader
en utilisant le FileReader
classe.
Supposons que nous ayons un fichier nommé input.txt avec le contenu suivant.
This is a line of text inside the file.
Essayons de lire ce fichier en utilisant FileReader
(une sous-classe de Reader
).
import java.io.Reader;
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
Reader input = new FileReader("input.txt");
// Checks if reader is ready
System.out.println("Is there data in the stream? " + input.ready());
// Reads characters
input.read(array);
System.out.println("Data in the stream:");
System.out.println(array);
// Closes the reader
input.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
Sortie
Is there data in the stream? true Data in the stream: This is a line of text inside the file.
Dans l'exemple ci-dessus, nous avons créé un lecteur en utilisant le FileReader
classer. Le lecteur est lié au fichier input.txt .
Reader input = new FileReader("input.txt");
Pour lire les données de input.txt fichier, nous avons implémenté ces méthodes.
input.read(); // to read data from the reader
input.close(); // to close the reader
Pour en savoir plus, visitez Java Reader (documentation officielle de Java).
Java