Как читать файл построчно в Java

Введение

В этой статье вы узнаете о различных способах использования Java для чтения содержимого файла построчно. В этой статье используются методы из следующих классов Java: java.io.BufferedReader, java.util.Scanner, Files.readAllLines() и java.io.RandomAccessFile.

Чтение файла построчно с использованием BufferedReader

Вы можете использовать метод readLine() из java.io.BufferedReader для чтения файла построчно в строку. Этот метод возвращает null, когда достигнут конец файла.

Вот пример программы для чтения файла построчно с помощью 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);
				// читать следующую строку
				line = reader.readLine();
			}

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

}

Продолжайте учиться с BufferedReader API Doc (Java SE 8).

Чтение файла построчно с использованием Scanner

Вы можете использовать класс Scanner для открытия файла и последующего чтения его содержимого построчно.

Вот пример программы для чтения файла построчно с помощью 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();
		}
	}

}

Продолжайте изучение с Scanner API Doc (Java SE 8).

Чтение файла построчно с использованием Files

java.nio.file.Files – это утилитарный класс, который содержит различные полезные методы. Метод readAllLines() может быть использован для чтения всех строк файла в список строк.

Вот пример программы для чтения файла построчно с использованием 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();
		}
	}

}

Продолжайте свое обучение с Files API Doc (Java SE 8).

Чтение файла построчно с использованием RandomAccessFile

Вы можете использовать RandomAccessFile, чтобы открыть файл в режиме чтения, а затем использовать его метод readLine для построчного чтения файла.

Вот пример программы для построчного чтения файла с использованием 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();
		}
	}

}

Продолжайте свое обучение с RandomAccessFile API Doc (Java SE 8).

Заключение

В этой статье вы узнали о различных способах использования Java для чтения содержимого файла построчно.

Продолжайте свое обучение с дополнительными учебными пособиями по Java.

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