使用apachePOI将Longtypes的值插入到Excel中

我有一个使用Java程序创build的Excel表。 我需要将一个Longtypes的值(如361272004652 )插入到Excel工作表中。 它正确插入。 但问题是,当我打开Excel表格Long值以指数forms显示(如3.61272E+11 )。

我需要这样的价值。 不是以指数forms。

我的代码是这样的:

  else if (cellVal instanceof Long) { cell.setCellValue((Long)cellVal); ... } 

其中cellVal是对象types

有必要在现场设置一个格式。 我在一个jsp页面下面做了这个例子,但是,它的工作原理。 没有必要将浮点值转换。 把“.0”放在最后,CellStyle属性需要注意。

 <%@ page import="java.io.FileOutputStream"%> <%@ page import="org.apache.poi.hssf.usermodel.HSSFSheet"%> <%@ page import="org.apache.poi.hssf.usermodel.HSSFWorkbook"%> <%@ page import="org.apache.poi.ss.usermodel.Cell"%> <%@ page import="org.apache.poi.ss.usermodel.CellStyle"%> <%@ page import="org.apache.poi.ss.usermodel.DataFormat"%> <%@ page import="org.apache.poi.ss.usermodel.Row"%> <% HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet("format sheet"); CellStyle style; DataFormat format = wb.createDataFormat(); short rowNum = 0; short colNum = 0; Row row = sheet.createRow(rowNum++); Cell cell = row.createCell(colNum); cell.setCellValue(361272004652.0); style = wb.createCellStyle(); style.setDataFormat(format.getFormat("0")); cell.setCellStyle(style); FileOutputStream fileOut = new FileOutputStream("filexample.xls"); wb.write(fileOut); fileOut.close(); %>