PHPExcel-将带前导零的csv转换为xls

PHPExcel-将带前导零的csv转换为xls,excel,csv,Excel,Csv,我已经生成了在线商店的csv文件,在这个文件中有一些产品的文章从000开始。如果打开csv文件,前导零将消失。我想将其转换为xls文件以保持前导零。我试过: $objPHPExcel = new PHPExcel(); $objReader = new PHPExcel_Reader_CSV(); $objReader->setInputEncoding('UTF8'); $objReader->setDelimiter(';'); $objReader->setEnclos

我已经生成了在线商店的csv文件,在这个文件中有一些产品的文章从000开始。如果打开csv文件,前导零将消失。我想将其转换为xls文件以保持前导零。我试过:

$objPHPExcel = new PHPExcel();

$objReader = new PHPExcel_Reader_CSV();
$objReader->setInputEncoding('UTF8');
$objReader->setDelimiter(';');
$objReader->setEnclosure('');
$objReader->setLineEnding("\r\n");
$objReader->setSheetIndex(0);

$objReader->loadIntoExisting("files/test.csv", $objPHPExcel);

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, "Excel2007");
$objWriter->save("files/test.xlsx");
但前导零仍然会消失。我尝试添加行以使列格式成为字符串:

$objPHPExcel->getActiveSheet()->getStyle('A2:A10000')->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_TEXT );

但结果是一样的。

首先打开Excel,然后查看是否可以从CSV文件导入数据。它不是提供了一个导入向导,您可以在其中定义列的数据类型吗?如果是这样,请以字符串形式导入。生成数据时,请在可能以前导零开头的值前面加一个引号(撇号)。我们需要将生成的xls文件放在服务器上,然后经销商将自动下载并导入其程序,所以他们不可能每次都打开它并通过向导导入。您把
setFormatCode()
放在代码中的什么地方了?导入CSV文件之前或之后?导入CSV文件之前。之后单元格有文本格式,但前导零仍会消失