使用POI以数字格式设置Excel单元格值
我想在Excel表格中存储数字数据。
数字数据在我的java代码中由stringtypes表示。
有没有可能将其设置为数字,而不是铸造它?
我试过下面的代码,但它没有转换为数字types(我在Excel中得到一个警告,说这个数字被存储为文本…)
HSSFCell dCell =... dCell.setCellType(Cell.CELL_TYPE_NUMERIC); dCell.setCellValue("112.45")
您必须提供双倍的价值。 正如文件所说 :
setCellValue
public void setCellValue(double value)
为单元格设置一个数值
参数 :
值 – 将此单元格设置为的数值。 对于公式,我们将设置预先计算的值,对于数字我们将设置它的值。 对于其他types,我们将把单元格更改为数字单元格并设置其值。
所以,应该是
dCell.setCellValue(new Double("123"));
要么
dCell.setCellValue(123); //Remember, the way you did was, you actually passed a string (no quotes)
我用这个大十进制,
dCell.setCellValue(new BigDecimal("112.45").doubleValue());
尝试使用包装类:
dCell.setCellValue(new Double(112.45));
顺便说一句,它会工作,如果你只是给的价值,而不是双cotes如下:
dCell.setCellValue(112.45);
老一个,但仍然这将有助于从.NET的一些谁使用NPOI
dCell.setCellValue(Convert.ToDouble(112.45));
我们确实有
cell.SetCellType(NPOI.SS.UserModel.CellType.NUMERIC);
它不会删除警告,但第一个代码在.net中转换为Double for All整数和Double值后工作
- 由poi API创build的Excel文件:数据在那里,但只有一行是可见的?
- 无法打开超链接的文件Apache POI
- Java的Apache POI空白单元格
- 使用apache POI在java中将数据写入xls,xlsx,csv文件
- 用Excel打开而不用Apache Poi永久保存文件
- 如何从一个Excel工作表使用java获取特定列名称(作为parameter passing)的最后一个非空单元格的行索引?
- POI cell.setCellFormula导致“名称”MY_FUNC“在当前工作簿中完全未知”错误
- 方法getCell(int)对于HSSFSheettypes是未定义的
- POI Java将xlsx转换为CSV逗号和双引号