Подсчёт строк в файле на Java — программа с BufferedReader
Программа на Java для подсчёта количества строк в файле.
Для понимания этого примера нужно знать следующие темы Java:
Класс
java.io.FileКласс
java.util.Scanner
Пример 1: подсчёт строк через Scanner
import java.io.File;
import java.util.Scanner;
class Main {
public static void main(String[] args) {
int count = 0;
try {
// create a new file object
File file = new File("input.txt");
// create an object of Scanner
// associated with the file
Scanner sc = new Scanner(file);
// read each line and
// count number of lines
while(sc.hasNextLine()) {
sc.nextLine();
count++;
}
System.out.println("Total Number of Lines: " + count);
// close scanner
sc.close();
} catch (Exception e) {
e.getStackTrace();
}
}
}
В примере выше мы использовали метод nextLine() класса Scanner для доступа к каждой строке файла. Здесь вывод программы зависит от количества строк в файле input.txt.
В этом случае у нас есть файл input.txt со следующим содержимым:
First Line
Second Line
Third Line
Получим вывод:
Total Number of Lines: 3
Пример 2: подсчёт строк через java.nio.file
import java.nio.file.*;
class Main {
public static void main(String[] args) {
try {
// make a connection to the file
Path file = Paths.get("input.txt");
// read all lines of the file
long count = Files.lines(file).count();
System.out.println("Total Lines: " + count);
} catch (Exception e) {
e.getStackTrace();
}
}
}
В примере выше:
lines() — читает все строки файла как поток (stream)
count() — возвращает количество элементов в потоке
Если файл input.txt содержит:
This is the article on Java Examples.
The examples count number of lines in a file.
Here, we have used the java.nio.file package.
Программа выведет Total Lines: 3.