Artículos
Java

Leer fichero al revés con Java

01/Sep/2015

Ya vimos en su momento como podemos leer un fichero de texto en Java. Pero como podemos hacer si queremos de forma inversa, es decir, leer fichero al revés con Java.

El funcionamiento para leer fichero al revés con Java es muy parecido al de leerlo de forma normal. Y es que el procedimiento será leerlo normalmente, almacenar su contenido en una lista y finalmente recorrer la lista de forma inversa para poder conseguir el efecto inverso.

Así que lo primero será leerlo mediante un FileReader almacenándolo en un BufferedReader.

FileReader fr = new FileReader("resources/fichero_lineas.txt");
BufferedReader bf = new BufferedReader(fr);

Ahora vamos a crear una lista. En este caso vamos a utilizar una lista enlazada o LinkedList, ya que nos ayudará a la hora de recorrerla de forma inversa.

LinkedList list = new LinkedList();

Las lecturas de las líneas las hacemos mediante el método .readLine() y las insertamos en la lista mediante el método .add().

LinkedList list = new LinkedList();

FileReader fr = new FileReader("resources/fichero_lineas.txt");
BufferedReader bf = new BufferedReader(fr);

String sCadena;
while ((sCadena = bf.readLine())!=null) {
  list.add(sCadena);				
}

Ahora ya tendremos todo el contenido del fichero perfectamente almacenado en la lista enlazada. Así que solo nos quedará recorrerla de forma inversa.

Para recorrerla de forma inversa vamos a utilizar un .descendingIterator(), es decir un iterador que va desde el final al principio.

Iterator it = list.descendingIterator();

Y mediante un bucle vamos moviendo el iterador y mostrando el contenido.

while(it.hasNext())
  System.out.println(it.next());

De esta forma ya habremos conseguido leer fichero al revés con Java.

Código Fuente

Descárgate el código fuente de Leer fichero al revés con Java
Y si te ha gustado nuestro código fuente puedes regalarnos una estrella Star

Vídeos sobre Java

Disfruta también de nuestros artículos sobre Java en formato vídeo. Aprovecha y suscribete a nuestro canal.

Test Java

¿Te atreves a probar tus habilidades y conocimiento en Java con nuestro test?

Test Java
Suscribir
Notificar de
guest
0 Comentarios
Opiniones integradas
Ver todos los comentarios