我正在使用pear包和PHP将数据写入mysql的Excel工作表。 在mysql表中,我有一个名为EAN的列。它的值是一个13位数字。 当我尝试运行该程序时,所有列数据都正确显示, 但这个14位数字显示为科学记数法4.04623E + 12。 原始号码是4046228004518.我使用下面的代码行。
$worksheet->write($i, 2, $sel_row['EAN']);
答案 0 :(得分:0)
尝试在值之前写一个撇号('
)。它将强制Excel将值显示为文本,因此不会将其转换为科学记数法。
答案 1 :(得分:0)
我在spring&apache poi中遇到了同样的问题。 此解决方案对我有用-
XSSFCellStyle numeric = (XSSFCellStyle) wb.createCellStyle();
numeric.setDataFormat(workbook.createDataFormat().getFormat("0"));
cell.setCellValue([large number]); //4046228004518
cell.setCellStyle(numeric);