使用Apache POI在Excel单元格中写入数字

2022-09-01 23:04:12

如何在poi的帮助下在单元格中写下我的全部值?

即,如果值为1000.000,那么我如何编写此完整值而不用POI在“.”之后截断000?意味着我想要全部价值。

在我的情况下,它只需要1000,但这对我来说不是正确的格式。


答案 1

您必须设置存储此数字的单元格的“格式”。示例代码:

Workbook wb = new HSSFWorkbook();
Sheet sheet = wb.createSheet("format sheet");
CellStyle style;
DataFormat format = wb.createDataFormat();
Row row;
Cell cell;
short rowNum = 0;
short colNum = 0;

row = sheet.createRow(rowNum++);
cell = row.createCell(colNum);
cell.setCellValue(11111.25);
style = wb.createCellStyle();
style.setDataFormat(format.getFormat("0.0"));
cell.setCellStyle(style);

row = sheet.createRow(rowNum++);
cell = row.createCell(colNum);
cell.setCellValue(11111.25);
style = wb.createCellStyle();
style.setDataFormat(format.getFormat("#,##0.0000"));
cell.setCellStyle(style);

FileOutputStream fileOut = new FileOutputStream("workbook.xls");
wb.write(fileOut);
fileOut.close();

来源 : http://poi.apache.org/spreadsheet/quick-guide.html#DataFormats


答案 2

推荐