Java XSSFCell.CELL_TYPE_数值将值0更改为25

Java XSSFCell.CELL_TYPE_数值将值0更改为25,java,apache-poi,xssf,Java,Apache Poi,Xssf,我试图从数据库中获取字符串数组列表形式的数据,然后使用poi-3.14 XSSF将其写入excel。 当我这样做时,我在excel单元格中得到警告,在单元格中输入一个数值,询问“转换为数字”。为了克服这个问题,我使用了setCellType()的附加代码 当我这样做时,单元格值更改为25。我在单元格中输入的其他十进制值也会发生这种情况 如何克服此更改?应使用预期的数据类型调用setCellValue()。似乎您使用字符串类型调用它,如果在传入之前将字符串转换为数字,那么它应该工作得更好,setC

我试图从数据库中获取字符串数组列表形式的数据,然后使用poi-3.14 XSSF将其写入excel。 当我这样做时,我在excel单元格中得到警告,在单元格中输入一个数值,询问“转换为数字”。为了克服这个问题,我使用了setCellType()的附加代码

当我这样做时,单元格值更改为25。我在单元格中输入的其他十进制值也会发生这种情况

如何克服此更改?

应使用预期的数据类型调用setCellValue()。似乎您使用字符串类型调用它,如果在传入之前将字符串转换为数字,那么它应该工作得更好,
setCellType()
也应该不再需要了

另请参见

setCellValue()
应使用预期的数据类型调用。似乎您使用字符串类型调用它,如果在传入之前将字符串转换为数字,那么它应该工作得更好,
setCellType()
也应该不再需要了

另见

integrityrecords.get(i).get(2)="0";
fieldsheet.getRow(1).getCell(3)
                    .setCellValue(integrityrecords.get(i).get(2));
System.out.println("coulmn 1  :" + integrityrecords.get(i).get(2));
fieldsheet.getRow(integrityStartRow).getCell(3).setCellType(XSSFCell.CELL_TYPE_NUMERIC);