Toujours montrer les deux points décimaux dans des cellules excel à l'aide d'Apache poi

Par exemple,

XSSFCellStyle style=(XSSFCellStyle) workbook.createCellStyle();
style.setDataFormat(workbook.createDataFormat().getFormat("#.##"));

productCell.setCellValue(12.4);
productCell.setCellType(Cell.CELL_TYPE_NUMERIC);
productCell.setCellStyle(style);

Cette affiche 12.4 dans la cellule spécifiée. Il devrait être 12.40. La valeur 12 est affiché comme 12. qui est tout à fait inutile.

Si la valeur est 0 ensuite, il affiche un point .. Il devrait toujours afficher deux chiffres après la virgule - 0.00, dans ce cas, quelle que soit la valeur stockée dans une cellule.

Comment faire pour forcer excel à toujours afficher deux chiffres après la virgule dans un numérique de la cellule?


- Je utiliser l'un des styles suivants à affichage numérique des cellules.

XSSFColor commonColor = new XSSFColor(new java.awt.Color(240, 240, 240));
XSSFColor cellBorderColour = new XSSFColor(new java.awt.Color(0, 76, 153));

Font font = workbook.createFont();
font.setBoldweight(Font.BOLDWEIGHT_BOLD);
font.setColor(IndexedColors.DARK_BLUE.index);

XSSFCellStyle style = (XSSFCellStyle) workbook.createCellStyle();
style.setFillForegroundColor(commonColor);
style.setFillPattern(CellStyle.SOLID_FOREGROUND);
style.setAlignment(CellStyle.ALIGN_RIGHT);
style.setFont(font);

style.setBorderLeft(BorderStyle.HAIR);
style.setBorderColor(XSSFCellBorder.BorderSide.LEFT, cellBorderColour);
style.setBorderTop(BorderStyle.HAIR);
style.setBorderColor(XSSFCellBorder.BorderSide.TOP, cellBorderColour);
style.setBorderRight(BorderStyle.HAIR);
style.setBorderColor(XSSFCellBorder.BorderSide.RIGHT, cellBorderColour);
style.setBorderBottom(BorderStyle.DOUBLE);
style.setBottomBorderColor(cellBorderColour);

J'ai appliqué des formules excel pour effectuer des calculs numériques des cellules qui sont censés être effectuée après l'application d'un format de nombre (arrondi au demi) sur les numériques cellules.

Avez-vous essayé ce stackoverflow.com/questions/9789627/...?
Oui ça se comporte exactement le même que celui mentionné dans la question.
Ce style de cellule avez-vous besoin d'en faire l'usage si vous êtes le formatage de la cellule dans Excel, pour l'obtenir à regarder la façon dont vous le souhaitez?
Édité à la question. @Gagravarr

OriginalL'auteur Tiny | 2014-09-24