Для моего проекта, с java и POI lib, я создаю файл excel. У меня есть несколько листов и много другой информации. Для нескольких я могу использовать шаблон и просто вставлять данные.Java POI autosize columun
Но для некоторых других данных я не знаю длины информации, которую я собираюсь получить.
мне нужно первенствовать представить хорошо, поэтому я использую различные стили, моя проблема с Авторазмером:
/**
* Remplit les cellules d'un onglet
* @param nomOnglet Le nom de l'onglet à remplir
* @param cellules Les valeurs à insérer dans l'onglet
* @throws TechniqueException
*/
private void remplirOnglet(HSSFWorkbook classeur, String nomOnglet, List<CelluleExport> cellules) throws TechniqueException {
HSSFSheet onglet = classeur.getSheet(nomOnglet);
if(onglet == null)
onglet = classeur.createSheet(nomOnglet);
int colMax = 0;
for (CelluleExport cellule : cellules) {
int idLigne = cellule.getRow()-1;
int idColonne = cellule.getColumn()-1;
colMax = Math.max(colMax, idColonne);
HSSFRow ligne = onglet.getRow(idLigne);
if(ligne == null)
ligne = onglet.createRow(idLigne);
HSSFCell poiCell = ligne.getCell(idColonne);
if(poiCell == null)
poiCell = ligne.createCell(idColonne);
poiCell.setCellType(HSSFCell.CELL_TYPE_STRING);
poiCell.setCellValue(cellule.getValeur());
if(cellule.isStyled()) {
applyStyle(cellule, poiCell);
if(cellule.getStyleType().equals(CelluleExport.CELL_STYLE_TYPE.TITRE_BLOC))
fusionnerDroite(onglet, cellule, 2);
}
}
for(int i=0; i <= colMax; i++){
onglet.autoSizeColumn(i, true);
}
}
Auosize работает отлично, большая часть времени. Для нескольких ячеек, с жирным шрифтом или большим шрифтом, он не работает.
Кто-нибудь знает способ избежать этой проблемы? Я ничего не нашел в Интернете, и я думаю, что это проблема с lib.
Это проблема lib или проблема excel. У меня тоже есть эта проблема, и я не нашел решения. – IQV
Для тех, кого это интересует, я исправил проблему, добавив определенное значение после autoSize: \t onglet.autoSizeColumn (i, true); \t onglet.setColumnWidth (i, onglet.getColumnWidth (i) + 3 * 256); –