Obtener el recuento de línea de un archivo en Java
-
Cuente el número de líneas en un archivo usando la clase
Scanner
en Java -
Cuente el número de líneas en el archivo usando el paquete
java.nio.file
El artículo explicará los distintos métodos para contar el número total de líneas en un archivo.
El procedimiento de contar las líneas en un archivo consta de cuatro pasos:
- Abre el archivo.
- Lea línea por línea e incremente el recuento en uno después de cada línea.
- Cierra el archivo.
- Lea el recuento.
Aquí hemos utilizado dos métodos para contar el número de líneas en un archivo. Estos métodos son Java File
Class y Scanner
Class.
Cuente el número de líneas en un archivo usando la clase Scanner
en Java
En este enfoque, se utiliza el método nextLine()
de la clase Scanner
, que accede a cada línea del archivo. El número de líneas depende de las líneas del archivo input.txt
. El programa también imprime el contenido del archivo.
Códigos de ejemplo:
import java.io.File;
import java.util.Scanner;
class Main {
public static void main(String[] args) {
int count = 0;
try {
File file = new File("input.txt");
Scanner sc = new Scanner(file);
while (sc.hasNextLine()) {
sc.nextLine();
count++;
}
System.out.println("Total Number of Lines: " + count);
sc.close();
} catch (Exception e) {
e.getStackTrace();
}
}
}
Si el archivo consta de tres líneas, como se muestra a continuación.
This is the first line.This is the second line.This is the third line.
Entonces la salida será
Producción :
Total Number of Lines: 3
Cuente el número de líneas en el archivo usando el paquete java.nio.file
Para este propósito, el método lines()
leerá todas las líneas de un archivo como una secuencia, y el método count()
devolverá el número de elementos en una secuencia.
Códigos de ejemplo:
import java.nio.file.*;
class Main {
public static void main(String[] args) {
try {
Path file = Paths.get("input.txt");
long count = Files.lines(file).count();
System.out.println("Total Lines: " + count);
} catch (Exception e) {
e.getStackTrace();
}
}
}
Producción :
Total Lines: 3