gpt4 book ai didi

apache - 在 Apache POI HSSF 中,单元格类型仍然显示为 "General"Excel,即使它是数字格式的

转载 作者:行者123 更新时间:2023-12-02 09:19:45 25 4
gpt4 key购买 nike

我正在使用 Apache POI HSSF 从我的 Java Web 应用程序生成 Excel 电子表格。

我需要一个格式为“数字”且保留 2 位小数的单元格。 (我在 Java 中的值是 BigDecimals,但我可以将它们转换为 double ,没问题。)我正在使用以下代码:

CellStyle numericStyle = wb.createCellStyle();
numericStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("#,##0.00"));

// output in this new style...
row.createCell(cellnum).setCellValue(((BigDecimal)value).doubleValue());
row.getCell(cellnum).setCellStyle(numericStyle);

问题是,即使这有效,Excel 仍然将我的单元格显示为常规。它们需要显示为数字。因此,例如,0 显示为 0,但它应该是 0.00,如果格式正确(数字),就会出现这种情况。

我看到它生成为常规,因为我可以右键单击单元格,然后选择“设置单元格格式”来查看它现在的内容。需要由 Apache POI HSSF 将其设置为“Number”。

最佳答案

查看 Apache POI API看来您应该能够指定单元格的类型。

...
Cell cell = row.createCell(...);
cell.setCellType(Cell.CELL_TYPE_NUMERIC);
...

关于apache - 在 Apache POI HSSF 中,单元格类型仍然显示为 "General"Excel,即使它是数字格式的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7839009/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com