Java - Convertir CSV (archivo de texto plano) a ArrayList

Java: convertir CSV (archivo de texto) a ArrayList

En el post te hoy te enseñaré a crear un ArrayList a partir de un archivo de texto plano en formato separado por comas usando Java.

Es decir, vamos a leer el archivo línea por línea, crear un objeto y luego agregar ese objeto al ArrayList. Básicamente vamos a convertir un txt o archivo separado por comas a un ArrayList.

Para este caso usaré la clase Persona que tiene los atributos nombre, edad y dirección.

El archivo es el siguiente:

Puedes tomarlo como convertir un CSV a ArrayList o un TXT a ArrayList.

Explicación del algoritmo

Convertir un CSV a ArrayList en Java es muy sencillo. Primero abrimos y recorremos el archivo línea por línea.

Después usamos split para convertir esa línea a arreglo, separándola por el punto y coma.

Para el ejemplo del archivo que coloqué al inicio, en la posición 0 del arreglo estaría el nombre, en la 1 la edad y en la 2 la dirección.

Ahora que tenemos un arreglo con los datos que necesitamos hacemos las conversiones de String a Int necesarias, creamos un objeto y luego lo agregamos al ArrayList.

CSV (archivo de texto) a ArrayList en Java

Java - Convertir CSV (archivo de texto plano) a ArrayList
Java – Convertir CSV (archivo de texto plano) a ArrayList

Primero veamos la clase. Recuerda que se supone que dentro del CSV hay un objeto por línea (serializado) y que vamos a crear varios objetos de este tipo:

Por el momento no coloqué setters ni más constructores, pues basta con lo que se ve en la clase para el ejercicio que vamos a resolver.

Creamos el ArrayList de tipo Persona que al inicio estará vacío y también abrimos el archivo manejando las excepciones:

Ahora hacemos un ciclo while leyendo el archivo línea por línea, y justo ahí ocurre la magia en donde agregamos el objeto al ArrayList con add:

La conversión también ocurre en la línea 3 en donde usamos Integer.valueOf. Finalmente regresamos ese ArrayList y así es como hemos transformado un txt a un ArrayList en Java.

Poniendo todo junto

El código completo junto con su uso queda como se ve a continuación. Recuerda que el orden del archivo TXT o CSV es importante y que el mismo debe existir:

En el main simplemente estoy obteniendo el ArrayList desde el archivo de texto plano y también recorriéndolo.

La salida ya la dejé en una imagen anteriormente. Es importante aclarar que esto es un ejemplo de una clase con 3 atributos pero que puedes ajustar para manejar más atributos o una clase distinta.

Para terminar te dejo con más tutoriales de Java en mi blog.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *