Java >> Tutoriel Java >  >> Tag >> String

Java Lire le texte du fichier | En chaîne | Scanner | Exemple de lecture de fichier ligne par ligne

Lire du texte à partir d'un fichier ou lire un fichier est très important pour tout langage de programmation. Dans ce didacticiel, vous apprendrez à "Java lire le texte du fichier" avec un exemple. Il existe plusieurs façons de lire un fichier texte dans un langage de programmation Java.

Lire un fichier texte en Java

Voici différentes manières de lire un fichier en Java.

  • Classe FileReader
  • BufferedReader
  • Classe de scanner
  • Lire un fichier texte à l'aide de la classe Files

Java 8 est introduit java.util.stream.Stream qui est un moyen plus efficace de lire un fichier en Java.

Commençons Java lire l'exemple de texte de fichier de différentes manières

Nous couvrons certaines façons avec un seul fichier texte, en joignant un écran comment nous avons organisé notre projet.

Classic BufferedReader

Pour cela, vous devez importer un package java io (input/output/) et un fichier BufferedReader. Avant cela, vous avez également besoin d'une classe File pour obtenir le fichier. Donc FileReader et File les deux classes devaient être importées.

Voir l'exemple ci-dessous. Pour cela, en supposant qu'un nom de fichier est "filename.txt". Vous trouverez ci-dessous une capture d'écran du projet pour une meilleure compréhension.

Voici un code complet.

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

public class FileReading {

    public static void main(String[] args) throws Exception {

        File file = new File("filename.txt");

        BufferedReader br = new BufferedReader(new FileReader(file));

        String str;
        while ((str = br.readLine()) != null)
            System.out.println(str);
    }
}

Sortie : Bonjour Buffer lire le fichier

Classe FileReader

Une classe FileReader hérite de la classe InputStreamReader et est utilisée pour lire des flux de caractères.

import java.io.FileReader;

public class FileReading {

    public static void main(String[] args) throws Exception {

        // pass the path of file
        FileReader fr = new FileReader("filename.txt");

        int i;
        while ((i = fr.read()) != -1)
            System.out.print((char) i);
    }
}

Sortie : FileReader lit le fichier

Utilisation de la classe Scanner

Pour cela, vous avez besoin d'une classe de fichier de package d'importation io et d'un scanner de package util, classe.

La classe Java Scanner se trouve sous java.util forfait. La classe Java Scanner décompose l'entrée en jetons à l'aide d'un délimiteur. Où c'est un espace blanc par défaut. Cela nous fournit de nombreuses méthodes pour lire et analyser diverses valeurs primitives.

import java.io.File;
import java.util.Scanner;

public class FileReading {

    public static void main(String[] args) throws Exception {

        // pass the path of file
        File file =
                new File("filename.txt");
        Scanner sc = new Scanner(file);

        while (sc.hasNextLine())
            System.out.println(sc.nextLine());
    }
}

Sortie : Le scanner a lu le fichier

Lire un fichier dans une chaîne

Voyons l'exemple de la façon dont Java lit le fichier en chaîne. (Lire le fichier en chaîne dans Java 8)

import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.stream.Stream;

public class FileReading {

    public static void main(String[] args) {
        String filePath = "filename.txt";

        System.out.println(readLineByLineJava(filePath));
    }


    private static String readLineByLineJava(String filePath) {
        StringBuilder contentBuilder = new StringBuilder();

        try (Stream<String> stream = Files.lines(Paths.get(filePath), StandardCharsets.UTF_8)) {
            stream.forEach(s -> contentBuilder.append(s).append("\n"));
        } catch (IOException e) {
            e.printStackTrace();
        }

        return contentBuilder.toString();
    }
}

Sortie : java lit le fichier ligne par ligne

Question : Comment lire les données d'un fichier en Java ?

Répondre  :Comme ci-dessus, nous comment lire un fichier en Java, peut faire avec d'autres fichiers comme word, excel etc.

Peut-être y a-t-il plus de façons de le faire, par exemple, si vous pensez qu'une autre méthode bien meilleure devrait figurer dans ce didacticiel, alors n'hésitez pas à commenter. Nous ajouterons ceci à d'autres. Et si vous avez des doutes et des suggestions, faites également des commentaires dans la section ci-dessous.

Pour lire du texte depuis la console suivez ce tutoriel – Texte depuis la console


Balise Java