我正在使用poi 3.6
我能够正确创建excel。但是当我尝试将单元格类型设置为数字时,它总是给我一般的单元格类型。
即。在新创建的Excel中,当我右键单击并转到格式化单元格 - >在那里,我总是找到一个将军编号。
我的代码就像这样
style.setAlignment(CellStyle.ALIGN_RIGHT);
dataCell.setCellValue(Float.parseFloat(value as String);
dataCell.setCellType(Cell.CELL_TYPE_NUMERIC);
dataCell.setCellStyle(style);
你能告诉我这里缺少什么吗?
答案 0 :(得分:27)
您也可以尝试这种方法:
HSSFRow row = sheet.createRow(sheet.getLastRowNum());
HSSFCell cell = row.createCell(0);
HSSFCellStyle style = workbook.createCellStyle();
style.setDataFormat(HSSFDataFormat.getBuiltinFormat("0.00"));
cell.setCellStyle(style);
cell.setCellValue(Float.parseFloat("21.5"));
当然,请查看documentation和有关data formats的示例。
答案 1 :(得分:0)
如果我没有弄错的话,您正在寻找的方法称为“setNumericCellValue”。 另外,请在设置值之前尝试设置单元格类型。