Разбор плохо написанного XLS - PullRequest
0 голосов
/ 12 апреля 2020

Мне нужно проанализировать php файл XLS, который написан каким-то другим кодом, и он, кажется, плохо написан.

Я попытался проанализировать его с помощью PHPExcel, используя автоматическое распознавание следующим образом:

$inputFileType = PHPExcel_IOFactory::identify($inputFileName);
echo 'filetype: '.$inputFileType.'<br>';
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);

Что возвращает:

filetype: CSV

Файл открыт, но он не читается правильно, поскольку данные неправильно распознаны, содержимое не находится в соответствующих ячейках, а некоторые ячейки выдают ошибку. Я пытался использовать все другие типы файлов PHPExcel, и все они возвращали ошибку.

Я пытался открыть его с помощью текстового редактора (Notepad ++) и файла в двоичном формате, а не в виде простого CSV. Расширение XLS, но поскольку оно написано с помощью скрипта, его нельзя использовать в качестве уникального идентификатора версии.

Если я открываю файл в Excel, он открывается и я могу сохранить его в другом формате (например, как новый файл xlsx), и после этого я могу правильно его прочитать.

Думая, что он закодирован в каком-то очень старом формате, я попытался с другой библиотекой SimpleExcel, и я получил эту ошибку: Расширение файла XLS не делает t совпадает с xml

Есть ли способ "исправить" формат перед его разбором?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...