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

Lecture de Fichiers en Java avec BufferedReader – Guide Pratique avec Exemples

Comment lire un fichier en Java ?

Java offre une variété de classes d'E/S pour les opérations sur les fichiers. La façon la plus efficace de lire des fichiers texte est via java.io.BufferedReader, qui enveloppe un Reader de niveau inférieur et met en tampon l'entrée pour réduire les appels système coûteux.

Qu'est-ce que BufferedReader en Java ?

BufferedReader est une classe qui lit du texte à partir d'un flux d'entrée (tel qu'un fichier) en mettant en tampon les caractères. Cela permet une lecture rapide, ligne par ligne ou bloc par bloc, sans faire d'appel système pour chaque caractère.

Comme les méthodes comme read() sur FileReader ou InputStreamReader peuvent être coûteuses, les envelopper dans un BufferedReader est une pratique courante pour améliorer les performances.

Un motif d'utilisation typique ressemble à ceci :

BufferedReader reader = new BufferedReader(new FileReader("D:\\DukesDiary.txt"));

Ici, le fichier est ouvert et mis en tampon pour une lecture efficace.

Pour afficher le contenu du fichier, itérez sur chaque ligne jusqu'à la fin du fichier :

String ligneCourante;
while ((ligneCourante = reader.readLine()) != null) {
    System.out.println(ligneCourante);
}

La boucle se termine lorsque readLine() retourne null, indiquant que la fin du fichier a été atteinte.

Exemple BufferedReader (Avant JDK 7)

Voici un exemple complet, prêt pour la production, démontrant les meilleures pratiques pour la gestion des ressources :

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

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

Le bloc finally garantit que le reader est fermé, libérant les ressources système même si une exception se produit.

Exemple BufferedReader (JDK 7+ avec Try-With-Resources)

Avec Java 7 et versions ultérieures, l'instruction try-with-resources simplifie le nettoyage. L'exemple suivant montre la même logique sous une forme plus concise :

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

public class ExempleLectureFichierJDK7 {
    private static final String NOM_FICHIER = "D:\\DukesDiary.txt";

    public static void main(String[] args) {
        try (BufferedReader br = new BufferedReader(new FileReader(NOM_FICHIER))) {
            String ligneCourante;
            while ((ligneCourante = br.readLine()) != null) {
                System.out.println(ligneCourante);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

L'utilisation de try-with-resources ferme automatiquement le BufferedReader, rendant le code plus propre et moins sujet aux erreurs.

Java

  1. Maîtriser Java BufferedReader : Gestion efficace des flux de caractères
  2. Maîtriser les opérations sur les fichiers Java avec java.io – Création, lecture, écriture et suppression
  3. Méthode Java String length() : Comment obtenir la taille d'une chaîne (Exemple)
  4. Comprendre Java String.charAt() : Syntaxe, type de retour, exceptions et exemple pratique
  5. Maîtriser la méthode Java String compareTo() : Syntaxe, cas d'usage et exemples pratiques
  6. Méthode Java String.contains() : Comment vérifier la présence de sous-chaînes – Exemples pratiques
  7. Maîtriser Java String.endsWith() : Comment vérifier les suffixes de chaînes avec exemples
  8. Algorithme de tri par insertion en Java : exemple clair et guide pas à pas
  9. Tri par sélection en Java : exemple pas à pas et code complet