Comment Lire un Fichier Ligne par Ligne en Java

Introduction

Dans cet article, vous apprendrez différentes façons d’utiliser Java pour lire le contenu d’un fichier ligne par ligne. Cet article utilise des méthodes des classes Java suivantes : java.io.BufferedReader, java.util.Scanner, Files.readAllLines() et java.io.RandomAccessFile.

Lecture d’un fichier ligne par ligne à l’aide de BufferedReader

Vous pouvez utiliser la méthode readLine() de java.io.BufferedReader pour lire un fichier ligne par ligne en String. Cette méthode renvoie null lorsque la fin du fichier est atteinte.

Voici un exemple de programme pour lire un fichier ligne par ligne avec BufferedReader :

ReadFileLineByLineUsingBufferedReader.java
package com.journaldev.readfileslinebyline;

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

public class ReadFileLineByLineUsingBufferedReader {

	public static void main(String[] args) {
		BufferedReader reader;

		try {
			reader = new BufferedReader(new FileReader("sample.txt"));
			String line = reader.readLine();

			while (line != null) {
				System.out.println(line);
				// lire la ligne suivante
				line = reader.readLine();
			}

			reader.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}

Poursuivez votre apprentissage avec le BufferedReader API Doc (Java SE 8).

Lecture d’un fichier ligne par ligne en utilisant Scanner

Vous pouvez utiliser la classe Scanner pour ouvrir un fichier et ensuite lire son contenu ligne par ligne.

Voici un exemple de programme pour lire un fichier ligne par ligne avec Scanner:

ReadFileLineByLineUsingScanner.java
package com.journaldev.readfileslinebyline;

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

public class ReadFileLineByLineUsingScanner {

	public static void main(String[] args) {
		try {
			Scanner scanner = new Scanner(new File("sample.txt"));

			while (scanner.hasNextLine()) {
				System.out.println(scanner.nextLine());
			}

			scanner.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}
	}

}

Poursuivez votre apprentissage avec la Documentation de l’API Scanner (Java SE 8).

Lecture d’un fichier ligne par ligne en utilisant Files

java.nio.file.Files est une classe utilitaire qui contient diverses méthodes utiles. La méthode readAllLines() peut être utilisée pour lire toutes les lignes du fichier dans une liste de chaînes de caractères.

Voici un exemple de programme pour lire un fichier ligne par ligne avec Files:

ReadFileLineByLineUsingFiles.java
package com.journaldev.readfileslinebyline;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;

public class ReadFileLineByLineUsingFiles {

	public static void main(String[] args) {
		try {
			List<String> allLines = Files.readAllLines(Paths.get("sample.txt"));

			for (String line : allLines) {
				System.out.println(line);
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}

Continuez votre apprentissage avec le Files API Doc (Java SE 8).

Lecture d’un fichier ligne par ligne à l’aide de RandomAccessFile

Vous pouvez utiliser RandomAccessFile pour ouvrir un fichier en mode lecture puis utiliser sa méthode readLine pour lire un fichier ligne par ligne.

Voici un exemple de programme pour lire un fichier ligne par ligne avec RandomAccessFile:

ReadFileLineByLineUsingRandomAccessFile.java
package com.journaldev.readfileslinebyline;

import java.io.IOException;
import java.io.RandomAccessFile;

public class ReadFileLineByLineUsingRandomAccessFile {

	public static void main(String[] args) {
		try {
			RandomAccessFile file = new RandomAccessFile("sample.txt", "r");
			String str;

			while ((str = file.readLine()) != null) {
				System.out.println(str);
			}

			file.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}

Continuez votre apprentissage avec le RandomAccessFile API Doc (Java SE 8).

Conclusion

Dans cet article, vous avez appris différentes façons d’utiliser Java pour lire le contenu d’un fichier ligne par ligne.

Continuez votre apprentissage avec plus de tutoriels Java.

Source:
https://www.digitalocean.com/community/tutorials/java-read-file-line-by-line