Hoe een bestand regel voor regel te lezen in Java

Introductie

In dit artikel leer je verschillende manieren om Java te gebruiken om de inhoud van een bestand regel voor regel te lezen. Dit artikel maakt gebruik van methoden uit de volgende Java-klassen: java.io.BufferedReader, java.util.Scanner, Files.readAllLines(), en java.io.RandomAccessFile.

Het lezen van een bestand regel voor regel met BufferedReader

Je kunt de readLine()-methode van java.io.BufferedReader gebruiken om een bestand regel voor regel naar een string te lezen. Deze methode retourneert null wanneer het einde van het bestand is bereikt.

Hier is een voorbeeldprogramma om een bestand regel voor regel te lezen met 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);
				// lees volgende regel
				line = reader.readLine();
			}

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

}

Ga verder met leren met de BufferedReader API-documentatie (Java SE 8).

Het lezen van een bestand regel voor regel met behulp van Scanner

U kunt de klasse Scanner gebruiken om een bestand te openen en vervolgens de inhoud regel voor regel te lezen.

Hier is een voorbeeldprogramma om een bestand regel voor regel te lezen met 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();
		}
	}

}

Ga verder met leren met de Scanner API-documentatie (Java SE 8).

Het lezen van een bestand regel voor regel met behulp van Files

java.nio.file.Files is een hulpprogrammaklasse die verschillende nuttige methoden bevat. De methode readAllLines() kan worden gebruikt om alle regels van het bestand in een lijst van strings te lezen.

Hier is een voorbeeldprogramma om een bestand regel voor regel te lezen met 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();
		}
	}

}

Ga verder met je leren met de Files API Doc (Java SE 8).

Het lezen van een bestand regel voor regel met behulp van RandomAccessFile

Je kunt RandomAccessFile gebruiken om een bestand te openen in leesmodus en vervolgens de readLine-methode gebruiken om een bestand regel voor regel te lezen.

Hier is een voorbeeldprogramma om een bestand regel voor regel te lezen met 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();
		}
	}

}

Ga verder met je leren met de RandomAccessFile API Doc (Java SE 8).

Conclusie

In dit artikel heb je geleerd over verschillende manieren om Java te gebruiken om de inhoud van een bestand regel voor regel te lezen.

Ga verder met je leren met meer Java tutorials.

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