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

时间:2011-03-17 05:35:47

标签: java excel apache-poi

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

即。如果值是1000.000那么我怎么能写这个完整的值而不截断“000”之后的000。与POI?意味着我想要全部价值。

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

1 个答案:

答案 0 :(得分:34)

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

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