Comment lire un fichier ligne par ligne en java

Comment lire un fichier ligne par ligne en java
Les fichiers peuvent être en taille énorme contenant des centaines et des milliers de lignes d'informations, donc au lieu de lire l'intégralité du fichier qui prendra des ressources système, nous pouvons imprimer des fichiers texte ligne par ligne en utilisant Tampon classe en java. Donc, dans cet article, nous vous fournirons une explication approfondie avec un code qui peut être utilisé pour lire vos fichiers. Alors, commençons

Lire des fichiers ligne par ligne à l'aide de la classe BufferedReader en Java

Pour lire n'importe quel fichier, vous avez besoin pour initialiser un processus de gestion de fichiers dans Java que vous pouvez faire en tapant:

Importer Java.Io.*

Ensuite, nous avons importé une classe qui est utilisée pour lire les données du clavier lorsqu'elle est appuyée par l'utilisateur comme indiqué ci-dessous:

Importer Java.user.Scanner;

Après cela, nous avons créé une classe publique où tout notre codage résidera en tapant:

classe publique FileRenerLineByline

Ce sera votre fonction principale dans une classe où nous avons passé l'argument de la chaîne:

public static void main (String [] args)

Maintenant, nous initialisons un fichier avec le nom des employés.txt 'avec le chemin où il se trouve:

Fichier f = nouveau fichier ("employés.SMS");

Maintenant, nous avons initialisé une variable de lecteur de fichiers 'Fr' qui sera utilisé pour récupérer le contenu de l'ensemble du fichier et définir initialement la valeur sur NULL:

FileReader FR = null;

Après cela, nous avons également initialisé un lecteur tamponné qui sera utilisé pour lire la ligne de remplissage par ligne et définir sa valeur également sur NULL:

BufferedReader br = null;

Il s'agit d'une étape obligatoire pour implémenter le processus de traitement des exceptions ici car il est parfois possible que vous lisiez un fichier énorme ou en cas d'erreur, le programme peut être écrasé, ce qui rend un fichier corrompu que vous essayez de lire. Donc, pour ce faire, vous devez implémenter le processus «essayer» et «capture». À l'intérieur du corps d'essai, vous devez lire le fichier à des fins de sécurité comme indiqué ci-dessous:

essayer

FR = nouveau java.Io.FileReader (F);
br = new BufferedReader (FR);
tandis que ((ligne = br.readLine ())!= null)

Système.dehors.println (ligne);

BR.fermer();
frousser.fermer();

Il est vraiment important de lire les fichiers ligne par ligne car parfois le fichier a une taille énorme et vous ne pouvez pas lire le fichier entier car cela aura un grand impact sur les performances de votre système. Maintenant, la partie catch qui ne s'exécutera que si une erreur se produit pendant le processus de lecture du fichier et que sa syntaxe est la suivante.

catch (ioException ex)
Système.se tromper.println ("Erreur lors de la lecture du fichier:" + ex.getMessage ());

Maintenant, c'est là que nous vous montrerons le code entier que nous avons expliqué dans des morceaux dans la partie précédente qui est montré ci-dessous:

Importer Java.Io.*
Importer Java.user.Scanner;
classe publique FileRenerLineByline
public static void main (String [] args)
Système.dehors.println ("Reading Fichier Line-by-Line à l'aide de BufferedReader Object \ n");
Système.dehors.println ("");
Fichier f = nouveau fichier ("employés.SMS");
FileReaderFr = null;
BufferedReaderBr = null;
essayer

Ligne de chaîne;
FR = nouveau java.Io.FileReader (F);
br = new BufferedReader (FR);
tandis que ((ligne = br.readLine ())!= null)

Système.dehors.println (ligne);

BR.fermer();
frousser.fermer();
//essayer
catch (ioException ex)
Système.se tromper.println ("Erreur lors de la lecture du fichier:" + ex.getMessage ());
//attraper
//principal()
//classe

Si vous souhaitez exécuter ce code Java dans le système d'exploitation Linux, vous pouvez le faire en utilisant n'importe quel éditeur de texte de votre choix. Par exemple, nous utilisons un éditeur de texte nano, nous le ferons donc en tapant.

$ nano fileReaderlineByline.Java

L'étape suivante consiste à écrire le code, puis à l'enregistrer:

Maintenant, pour exécuter ce code, vous devez d'abord vous assurer que vous avez installé l'application Java Development Kit (JDK) dans votre système d'exploitation Linux en tapant:

$ sudo apt installer par défaut-jdk

Après cela, vous devez d'abord compiler le code avant d'essayer d'exécuter le programme.

$ javac fileReaderlineByline.Java
$ java fileReaderlineByline

Maintenant, vous pouvez voir qu'après avoir exécuté le fichier, il est de lire des données disponibles dans le fichier texte de "Employés.SMS" qui est illustré ci-dessous:

Note: Vous devez ouvrir un terminal puis accéder au même répertoire où ce fichier texte est présent sinon vous ne pourrez pas lire ce fichier.

Lire des fichiers ligne par ligne à l'aide de la classe de scanner en java

Il existe une autre méthode pour lire les fichiers ligne par ligne consiste à utiliser une classe de scanner en Java et pour cela, vous devez taper.

Importer Java.Io.Déposer;
Importer Java.Io.FilenotFoundException;
Importer Java.user.Scanner;
classe publique readFilelineByline
public static void main (String [] args)
essayer
Scanner Scanner = nouveau scanner (nouveau fichier ("employés.SMS"));
pendant que (scanner.Hasnextline ())
Système.dehors.println (scanner.NextLine ());

scanner.fermer();
catch (filenotfoundException e)
e.printStackTrace ();


Conclusion

Parfois, les fichiers peuvent être en taille énorme contenant des centaines et des milliers d'informations. Au lieu de lire l'intégralité du fichier qui prendra des ressources système, nous pouvons les lire ligne par ligne en utilisant le Tampon classe en java. Dans cet article, nous vous avons appris comment vous pouvez lire n'importe quel fichier à l'aide d'un langage de programmation Java et pour cela, vous devez importer le processus de traitement des fichiers. Vous devez également implémenter le processus d'essai et de capture qui est utilisé pour gérer les exceptions de fichier en cas d'erreur lors de la lecture d'un fichier qui a été discuté dans cet article.