最近做项目导出订单Excel 文件时, 订单号变为了科学记数法。
自定义列的格式 选为0,把订单号从科学记数法转为数字时,最末尾全部变为0,
可能由于转为数字时超出长度了,末尾变为0. 好接下来解决这一问题,
一开始想的是把这一列的格式 改为普通文本 ,而不是默认的常规,用的是 laravel 的
Maatwebsite\Excel\Facades\Excel 库。 废话不多说:
$sheet->setColumnFormat([
'B' => '@',
]);
把第二列改为文本格式,更多用法参考stackoverflow How to pre-format a cell to date on Laravel Excel
改完之后发现 第二列的格式确实从常规变为了 文本,但是订单号依然为科学计数法, 这种方式不行,继续找别的办法,
就是在代码中 将订单号拼接上制表符 "\t"
"\t" . $orderNo . "\t"
建议是使用制表符 而不是单引号,因为后续处理方便
问题解决^_^
参考链接
How to pre-format a cell to date on Laravel Excel