Las sirenas poseen un arma más poderosa que su canto: su silencio
Franz Kafka

JavaCSV – Manejar Ficheros CSV (Excel) con Java

icono_excel.jpg Generalmente Java trabaja con Bases de Datos : se leen unos datos en base de datos, se presentan, el usuario interacciona, son procesados y finalmente se acualiza la base de datos.

También es frecuente importar / exportar los datos de una base de datos a otros formatos ya sea para tener un backup de la información en otro sistema / soporte, o para realizar operaciones complejas ya implementadas por otras herramientas, como las hojas de cálculo, ya sean Office u OpenOffice.

El formato CSV (Comma Separated Values) se utiliza para almacenar datos organizados en columnas, es decir los datos de una tabla. Cada columna se separa por un caracter delimitador que normalmente es la coma (de ahí el nombre del formato), y cada registro (o fila) se separa por un retorno de carro.

Si queremos manejar en Java este tipo de ficheros, podemos utilizar simplemente las clases del paquete java.io.* que manejan ficheros en general.

Sin embargo, podemos encontrar clases para gestionar precisamente ficheros con formato CSV : JavaCSV, una librería de código libre de libre distribución, fácil de aprender a utilizar y que cumple con todas nuestras necesidades.  Las dos clases principales son CsvReader y CsvWriter , que se utilizan para leer y escribir respectivamente un fichero CSV.

Un breve ejemplo para volcar unos datos a un fichero CSV podría ser:

CsvWriter writer = new CsvWriter (“informe.csv”);

//writer.setDelimiter(‘;’);

try {

writer.write(“REFERENCIA”);

writer.write(“NOMBRE”);

writer.write(“TITULOPROYECTO”);

writer.endRecord();

for (int i=0; i<listadoInformes.size(); i++) {

InformeBean informe = (InformeBean) listadoInformes.get(i);

writer.write (informe.getReferencia());

writer.write (informe.getNombre());

writer.write (informe.getTituloProyecto());

writer.endRecord();

}

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

writer.close();

}

También te puede interesar:

  • Fragmentar Ficheros de Configuración de Frameworks A partir del comentario de Jesús (mil agradecimientos), por fin he sacado tiempo para escribir este artículo. La motivación es simple. Los frameworks nos simplifican...
  • iText, librería para generar ficheros PDF iText es una librería Java gratuita que permite generar ficheros en formato PDF desde nuestro código Java. En su contra diré que el código es...
  • Leer un archivo con Java Para leer un fichero con Java, en la mayoría de las ocasiones será suficiente el siguiente código: private String getContenidoPDF (String rutaFicheroPDF) throws Exception {...
  • [Java] – Redigir la salida desde Java Antes del maravailloso invento del Log4J, teníamos los problemas de almacenar las trazas generadas desde un programa Java. Para ello podíamos utilizar al Sistema Operativo...
  • [iBATIS] – Abator Abator es un generador de código para utilizarlo dentro del framework de iBATIS. Podemos obtenerlo como un plugin para integrarlo en nuestro Eclipse. También podemos...

4 Comentarios hasta el momento »

  1. zara dijo

    14 de December del 2010 a las 9:58 pm

    como podria exportar los registros de una tabla de una base de datos hecha en SQLSERVER a excel

  2. yoyoooyoy dijo

    16 de December del 2010 a las 11:04 am

    Con un cliente de SQL Server puedes realizar una consulta (con la select que tú quieras) y luego con el botón derecho sobre los resultados puedes exportarlos a Excel. La versión Freeware del Toad lo permite.

    En una aplicación Java, sólo tendrías que realizar la consulta que quieras y almacenar sus resultados sobre una variable (en este caso listadoInformes), y luego utilizar el código que muestro en el ejemplo.

    Saludos

  3. javier dijo

    2 de February del 2011 a las 2:01 pm

    Hola, te hago una consulta, yo necesitaria que me salga una ventanita para elegir el destino del fichero, para que el usuario pueda elegir el lugar que el quiera, sabes como se hace ?.

    Gracias

  4. yoyoooyoy dijo

    2 de February del 2011 a las 4:21 pm

    Hola Javier,

    jugando en tu capa de control con la response. Echa un ojo a esto (el final te servirá):
    http://www.hachisvertas.net/blog/01/2009/02/09/ireport-sobre-struts-paso-3-generar-el-informe-desde-java

    Saludos

Comentarios RSS · TrackBack URI

Dejanos tu Comentario

Nombre: (Requerido)

E-Mail: (Requerido)

Sitio WEB:

Comentario:

Comenta