using poi , How to set the Cell type as number

2020-02-10 11:48发布

问题:

I am using poi 3.6

I am able to create the excel properly. But when I trying to set the cell type as number , it always give me cell type as general.

i.e. In the newly create excel , when I right click and go to format cell ->there I always found number to be a General.

My code is like this

style.setAlignment(CellStyle.ALIGN_RIGHT);
dataCell.setCellValue(Float.parseFloat(value as String);
dataCell.setCellType(Cell.CELL_TYPE_NUMERIC);
dataCell.setCellStyle(style);

Can you please suggest what is missing here ?

回答1:

You can try this approach too:

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"));

Of course, take a look at the documentation and examples about data formats.



回答2:

The method you are looking for is called "setNumericCellValue" if I'm not mistaken. Also, try setting the cell type before setting the value.