Está en la página 1de 2

Leer y Escribir en Ficheros Excel desde Java con Jakarta POI

Muchas compaas utilizan ficheros de Microsoft Excel en su operativa cotidiana para compartir informacin relativa a contabilidad, pedidos, etc. Que nuestra aplicacin desarrollada en Java sea capaz de exportar informes, etc. a este formato de fichero de Microsoft Excel (.xls) o incluso sea capaz de leer ese tipo de ficheros para importar la informacin contenida en ellos y procesarla otorga a nuestro desarrollo un arma de integracin adicional con otros sistemas que exporten/importen ficheros de Microsoft Excel. El API Jakarta POI es una buensima forma para acceder a archivos de Microsoft Office desde una clase Java, editarlos, escribir en ellos, leer informacin contenida en sus celdas, etc. Concretamente vamos a ver hoy el HSSF API que es la parte de POI que se encarga de acceder a los ficheros (.xls) de Microsoft Excel a partir de su versin 97, lo que se conoce como formato BIFF 8. Vamos con un ejemplo simple de programa Java que usa el API Jakarta POI HSSF(Horrible SpreadSheet Format) para crear, escribir y guardar un archivo de Microsoft Excel:

//Declaramos los imports, las libreras que usaremos import java.io.FileOutputStream; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRichTextString; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; public class EjemploExcel { public static void main(String[] args) { //Lo primero es crear el libro o workbook. HSSFWorkbook miLibro = new HSSFWorkbook(); //Luego creamos una hoja o sheet dentro del libro. HSSFSheet miHoja = miLibro .createSheet();

// Creamos una fila o row dentro de la hoja int numeroFila=0;//La primera fila se corresponde con el ndice 0 HSSFRow miFila = miHoja .createRow(numeroFila); // Creamos una celda o cell dentro de la fila. int numeroCelda=0;//La primera celda (la de la columna A) se corresponde con el ndice 0 HSSFCell miCelda = miFila.createCell((short) numeroCelda); // Generamos el contenido de la celda. HSSFRichTextString miContenido= new HSSFRichTextString("Hola Mundo!!!"); myCell.setCellValue(miContenido); // Guardamos el libro en un nuevo archivo .xls. try { FileOutputStream miArchivo = new FileOutputStream("holaMundo.xls"); miLibro.write(miArchivo); miArchivo.close(); } catch (Exception e) { e.printStackTrace(); } } }

Como veis es muy fcil. Jakarta POI, tambin, ofrece muchas otras funciones para dar formato a las celdas o para hacer campos calculados Puedes descargar las libreras de Jakartas POI en : http://poi.apache.org/download.html

También podría gustarte