Как правильно вытащить комментаций ячейки в phpexcel?

Добрый день.
Нужно вытащить комментарий(примечание) из ячейки, делаю следующим образом:
echo (string)$worksheet->getCommentByColumnAndRow($row, $col)->GetText();

Но вместо текста:
фывфффффффы sadssssasd 231 #$#%*(&@
Получаю текст:
DK2DDDDDDDK sadsss
Получается, что русские буквы кодируются как английские, а некоторые вообще обрезаются.
На сколько я зная этот Excel файл был сделан 1С-кой.

Как правильно вытащить комментарий с русскими словами?

Решение:
Конвертировать файл из xls в xlsx
  • Вопрос задан
  • 588 просмотров
Решения вопроса 1
VokaMut
@VokaMut Автор вопроса
Решилось пересохранением документа из xls в xlsx.
XLS не поддерживает комментарии, даже если они сохранены и отображаются в MsExcel 2007+

Конвертация из xls в xlsx:
$objPHPExcel = PHPExcel_IOFactory::load("XMLTest.xml");
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('covertedXml2Xlsx.xlsx');


Но теперь комментарии превращаются из:
йцукенгшщзхъфывапролджэячсмитьбюч
В:
9_x0004_F_x0004_C_x0004_:_x0004_5_x0004_=_x0004_3_x0004_H_x0004_I_x0004_7_x0004_E_x0004_J_x0004_D_x0004_K_x0004_2_x0004_0_x0004_

В браузере отображается как:
9FC:5=3HI7EJDK20
И при копировании в блокнот++ между каждой буквой юникодный символ "EOT"

Причем многие символы обрезаются.
Если конвертировать MsExcel-ем то всё нормально, даже длинные комментарии.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы