![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
Agares |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 376 Регистрация: 20.5.2007 Где: Минск Репутация: нет Всего: нет |
Парсю XLS модулем Spreadsheet::ParseExcel
На выходе получаю:
Как я понял, проблема с кодировкой, похоже выдается в utf8. Можно ли как-то преобразовать в нормальный вид?
не помогает Это сообщение отредактировал(а) Agares - 18.8.2008, 17:30 |
||||
|
|||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
Agares, поманипулируйте с модулем Encode (методы decode, encode). Прочтите по вашему модулю документацию, там есть явное указание кодировок (на сколько помню).
|
|||
|
||||
Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 2 Всего: 34 |
use Spreadsheet::ParseExcel::FmtUnicode;
Добавлено через 1 минуту и 29 секунд my $oFmtJ = Spreadsheet::ParseExcel::FmtUnicode->new(Unicode_Map=>'CP1251'); my $oBook = $oExcel->Parse('C:/путь/to.xls',$oFmtJ); |
|||
|
||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
Вот и оно
![]() Itsys, ;) P.S.: память не подвела ![]() ![]() |
|||
|
||||
Agares |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 376 Регистрация: 20.5.2007 Где: Минск Репутация: нет Всего: нет |
не помогает :( |
||||
|
|||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
Agares, а как вариант с Encode?
|
|||
|
||||
Agares |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 376 Регистрация: 20.5.2007 Где: Минск Репутация: нет Всего: нет |
тоже не помогает :(
|
|||
|
||||
Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 2 Всего: 34 |
Неужели так не помогает?
|
|||
|
||||
Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 2 Всего: 34 |
Если не помогает, когда приду домой, посмотрю, я с этом как-то уже боролся....
|
|||
|
||||
Agares |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 376 Регистрация: 20.5.2007 Где: Минск Репутация: нет Всего: нет |
Увы не помогает
|
|||
|
||||
nitr |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
Agares,
Добавлено через 2 минуты Agares, вы уверены что должно? Я проверил оба способа, что через Encode, что через Spreadsheet::ParseExcel::FmtUnicode. Результат - положительгый Добавлено через 3 минуты и 42 секунды Взял просто sample.pl отредактировал для себя и всё
Добавлено через 4 минуты и 41 секунду Agares, какая ОС и какой формат (чем создавался) данный xls??? |
||||
|
|||||
Agares |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 376 Регистрация: 20.5.2007 Где: Минск Репутация: нет Всего: нет |
ОС Unix, чем создавался файл не знаю, скорее всего Майкрософт Эксель. Сам сайт работает на utf8.
|
|||
|
||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
||||
|
||||
Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 2 Всего: 34 |
Нашел:
|
|||
|
||||
Agares |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 376 Регистрация: 20.5.2007 Где: Минск Репутация: нет Всего: нет |
Помогла вот такая бойда, спасибо
![]()
|
|||
|
||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
Agares, ужас какой ;)
Itsys, интересная подметка... Добавлено через 1 минуту и 17 секунд Кстати, давно писал про этот модуль, он уже давно не обновлялся, к примеру, не поймет Excel 2007. Так вот, я писал тогда, что лучше работать с XLS как с XML, есть аналогичный модуль, тогда ещё некоторые доработки здесь приводил ![]() |
|||
|
||||
Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 2 Всего: 34 |
nitr, ты имеешь в виду модуль XML::Excel? Не в курсе, насколько он быстрее работает чем Spreadsheet::ParseExcel?
ЗЫ Вообще, насколько я понял, быстрее всего парсить большие Excel файлы через OLE ![]() |
|||
|
||||
shamber |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1422 Регистрация: 5.9.2006 Где: Россия Репутация: 17 Всего: 18 |
вот что пишет автор
Ofcourse the DOM implementation takes up more resources and in some instances timing, it's the easiest to use.
помним помним ![]() ![]() Это сообщение отредактировал(а) shamber - 21.8.2008, 12:02 |
|||
|
||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
Itsys, shamber,
![]() Я вот что нашёл Spreadsheet::TieExcel По поводу Excel 2007 Spreadsheet::XLSX Так что проект кое-как развивается ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |