Soy un principiante de la API Apache POI. Estoy tratando de crear una hoja de Excel usando una lista de arrays.Problema al ajustar el tamaño de la celda excel al tamaño del contenido al usar apache poi
Mi código de Java es el siguiente.
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("new sheet");
HSSFCellStyle style = wb.createCellStyle();
style.setFillForegroundColor(HSSFColor.LIME.index);
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
HSSFRow row4 = sheet.createRow(4);
row4.createCell(4).setCellValue("name");
row4.createCell(5).setCellValue("emailId");
sheet.autoSizeColumn(5);
List<Bean> nameList = this.getArrayList();
Iterator<Bean> nameListIterator = nameList.iterator();
sheet.autoSizeColumn(5);
int i=5;
HSSFRow row = null;
while(nameListIterator.hasNext())
{
Bean bean = nameListIterator.next();
row = sheet.createRow(i);
row.createCell(4).setCellValue(bean.getName());
row.createCell(5).setCellValue(bean.getMailId());
i++;
}
ArrayList es como sigue:
List<Bean> beanList = new ArrayList<Bean>();
beanList.add(new Bean("Amy","[email protected]"));
beanList.add(new Bean("Joan","[email protected]"));
beanList.add(new Bean("Megan","[email protected]"));
beanList.add(new Bean("Joe","[email protected]"));
beanList.add(new Bean("Febi","[email protected]"));
Cuando se genera la hoja de Excel, la columna no se ajusta al tamaño del contenido correctamente. Busqué en Google relacionado con este problema y encontré
sheet.autoSizeColumn (5);
es la solución a mi problema. Añadí como en el código anterior, pero el problema persiste. ¿Lo estoy usando correctamente?
¿Hay alguna otra solución?
Por favor, ayuda
Gracias de antemano
PD: estoy usando Apache Poi 3,6
está configurando el tamaño de columna automático antes de que se escriban los datos. Por lo tanto, no sabe cómo dimensionarlo. Agréguelo después de su ciclo – Sean
@Sean Explicación muy útil para un principiante como yo. ¡¡Gracias!! – mvg
http://stackoverflow.com/questions/20190317/apache-poi-excel-big-auto-column-width – gavenkoa