PHPExcel - конвертировать csv с ведущими нулями в xls

Я сгенерировал 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 );

Но результат тот же.


person Alexder    schedule 24.02.2014    source источник
comment
Сначала откройте Excel, а затем посмотрите, сможете ли вы импортировать данные из CSV-файла. Разве это не дает мастер импорта, где вы можете определить типы данных столбцов? Если это так, импортируйте как строку.   -  person Matthew Poer    schedule 24.02.2014
comment
При создании данных поместите одинарную кавычку (апостроф) перед значениями, которые могут начинаться с начальных нулей.   -  person Gary's Student    schedule 24.02.2014
comment
Нам нужно разместить сгенерированный файл xls на нашем сервере, тогда дилеры автоматически загрузят и импортируют его в свою программу, поэтому они не смогут каждый раз открывать его и импортировать через мастера.   -  person Alexder    schedule 24.02.2014
comment
Где вы поместили этот setFormatCode() в свой код? До или после импорта файла CSV?   -  person Joseph    schedule 24.02.2014
comment
Перед импортом CSV-файла. После этого ячейки имеют текстовый формат, но ведущие нули все равно исчезают.   -  person Alexder    schedule 24.02.2014
comment
Ясно... как насчет количества нулей или символов, оно постоянно? Вы всегда можете повторно добавить их, если это так.   -  person Joseph    schedule 25.02.2014
comment
К сожалению, я не могу, потому что у кого-то 000, у кого-то 00, у кого-то нет... Но я решил проблему, обновил скрипт для экспорта из базы данных прямо в Excel, минуя csv. Спасибо!   -  person Alexder    schedule 27.02.2014