Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Maîtriser Java BufferedReader : Gestion efficace des flux de caractères

Maîtriser Java BufferedReader : Gestion efficace des flux de caractères

La classe BufferedReader, du package java.io, encapsule un autre Reader pour fournir une entrée de caractères efficace. En lisant des blocs de données dans un tampon interne, elle minimise les coûteuses opérations d'E/S disque.

Comment fonctionne BufferedReader

En interne, BufferedReader maintient un tampon de 8 192 caractères (taille par défaut). Lors d'une lecture, un bloc de caractères est récupéré depuis le fichier source et stocké dans ce tampon. Les lectures suivantes extraient les caractères du tampon un par un, réduisant drastiquement les accès disque et accélérant les E/S.

Création d'un BufferedReader

Importez-le depuis java.io et encapsulez n'importe quelle implémentation de Reader, comme FileReader :

import java.io.FileReader;
import java.io.BufferedReader;

FileReader fichier = new FileReader("exemple.txt");
BufferedReader reader = new BufferedReader(fichier);

Vous pouvez aussi spécifier une taille de tampon personnalisée :

BufferedReader reader = new BufferedReader(fichier, 16384); // tampon 16 Ko

Méthodes principales de BufferedReader

read()

Exemple : lecture du contenu entier de input.txt dans un tableau de caractères :

import java.io.FileReader;
import java.io.BufferedReader;

class Main {
    public static void main(String[] args) {
        char[] tampon = new char[100];
        try (FileReader fichier = new FileReader("input.txt");
             BufferedReader reader = new BufferedReader(fichier)) {
            reader.read(tampon);
            System.out.println("Données dans le fichier :\n" + new String(tampon));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Sortie

Données dans le fichier :
Ceci est une ligne de texte dans le fichier.

skip()

skip(long n) ignore les n prochains caractères du flux :

reader.skip(5); // ignore "Ceci "

Après l'ignorance, la lecture du contenu restant donne :

Données après ignorance de 5 caractères : est une ligne de texte dans le fichier.

close()

Fermez toujours le reader pour libérer les ressources :

reader.close();

Autres méthodes utiles

MéthodeDescription
ready()Vérifie si le flux est prêt à être lu sans blocage
mark(int readAheadLimit)Marque la position courante dans le flux
reset()Réinitialise le flux à la marque la plus récente

Pour une référence complète, visitez la documentation officielle Java.

Java

  1. Comprendre le mot-clé final en Java : variables, méthodes et classes
  2. L'opérateur instanceof en Java : guide complet
  3. Comprendre les classes imbriquées statiques en Java : utilisation, différences et exemples
  4. Maîtriser les classes internes anonymes en Java : définition, syntaxe et exemples pratiques
  5. Le pattern Singleton en Java expliqué : implémentation et utilisation sûre
  6. Maîtriser la réflexion Java : inspection des classes, méthodes et champs à l'exécution
  7. Maîtriser Java ObjectOutputStream : Sérialisation, méthodes et exemples pratiques
  8. Maîtriser les génériques Java : Construire du code réutilisable et type-safe
  9. Maîtriser les opérations sur les fichiers Java avec java.io – Création, lecture, écriture et suppression