Número de líneas de un fichero con un Stream

13/Sep/2015 Java , , , , Deja un comentario

En el ejemplo Número de líneas de un fichero con Java veíamos como podíamos calcular el número de líneas que contenía el fichero leyendo el contenido del mismo. Hoy veremos otra forma alternativa de realizarlo, para ello vamos a calcular el número de líneas de un fichero con un Stream. Es decir, simplemente vamos a volcar el fichero sobre un BufferReader y vamos a aprovecharnos de las capacidades del los Stream para saber cuántas líneas tiene el fichero. Esta es una nueva funcionalidad que viene con los Stream de Java 1.8 y que facilita la programación funcional..

Lo primero será acceder al fichero. Para ello vamos a utilizar un FileReader sobre el path en el que se encuentre el fichero.

  1. FileReader fr = new FileReader("resources/fichero.txt");

Siempre que estés accediendo a un fichero vas a tener que controlar las excepciones FileNotFoundException e IOException. Así que no se te olvide utilizar una estructura try-catch con ellas.

Ahora que tenemos el FileReader creamos un BufferReader a partir de él.

Una vez que tengamos el BufferReader es el punto en el cual no vamos a necesitar el recorrer las líneas para realizar el conteo del fichero, si no que lo que haremos será invocar al método .lines() el cual nos devolverá el Stream. Sobre este Stream deberemos de invocar al método .count() el cual contará directamente las líneas del Stream y por lo tanto las líneas del fichero.

  1. System.out.println("El fichero tiene " + bf.lines().count() + " lineas");

De esta sencilla forma habremos conseguido obtener el número de líneas de un fichero con un Stream en Java.

Ah! Se me olvidaba de una cosa. No dejes de cerrar el BufferReader una vez hayas terminado de utilizarlo. Para ello simplemente invoca al método .close.

  1. bf.close();

Una demostración de lo sencillo que es utilizar los elementos como los Stream y la programación funcional en Java. En este caso para calcular el número de filas de un fichero.

Vídeos sobre Java


Difunde el Conocimiento

Si te ha gustado el artículo o te ha sido de utilidad, no dejes de compartirlo con tus amigos en las redes sociales... Te estaremos muy agradecidos. :-D

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*