![]() |
Модераторы: ginnie, korob2001 |
![]() ![]() ![]() |
|
WERT |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 25.6.2007 Репутация: нет Всего: нет |
Подскажите, какой модуль лучше всего использовать для того, чтобы распарсить Exsel-файл.
есть тема на данном форуме Парсим xls, но она не совсем профильная. Интересует именно чем проще. Предполагается наличие только цифоровой и текстовой информации. Без диаграмм и т.п. |
|||
|
||||
dimes |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 249 Регистрация: 20.7.2004 Где: то около СПБ Репутация: нет Всего: 14 |
Насчет проще не уверен
но я использовал Spreadsheet::ParseExcel Поищи на search.cpan.org там много разных парсеров, по примерам кодов сам решишь какой самый простой ![]() |
|||
|
||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 2 Всего: 84 |
dimes, минус этого модуля - медленно.
WERT, но это самый оптимальный из многих. Можно (если Win OS) потестировать с OLE... |
|||
|
||||
dimes |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 249 Регистрация: 20.7.2004 Где: то около СПБ Репутация: нет Всего: 14 |
||||
|
||||
WERT |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 25.6.2007 Репутация: нет Всего: нет |
ОК, спасиб, попробую с этим поковыряться ![]() |
|||
|
||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 2 Всего: 84 |
WERT, ковыртся не надо. В комплекте с модулем есть примеры - ОЧЕНЬ много
![]() |
|||
|
||||
TTT |
|
|||
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 13.3.2007 Репутация: нет Всего: 1 |
Поделюсь сабом.
С использованием OLE:
Пример вызова my $excel = ParseExcel("$open_dir.$file_name"); строка 22 ($sheet->Columns("A:$MaxCol")->{NumberFormat} = "VT_EMPTY";) нужна для правильного чтения ячейки в формате даты (подбирал параметр методом тыка). Поначалу использовал модуль Spreadsheet::ParseExcel, но некоторые файлы он отказывался обрабатывать. Если на виндозной машине все работать будет, лучше через OLE однозначно. Надеюсь поможет ![]() Это сообщение отредактировал(а) TTT - 26.6.2007, 12:50 |
|||
|
||||
WERT |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 25.6.2007 Репутация: нет Всего: нет |
Ок, спасибо. Можно считать вопрос исчерпанным.
![]() |
|||
|
||||
Nandy |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 17.5.2007 Репутация: нет Всего: нет |
А вот у меня возник такой вопрос: почему значения массива ячеек заносятся в скалярную переменную?
$array = $sheet->Range("A1:$last_cell")->{Value}; Как же теперь обращаться к отдельным значениям ячеек? Разве нельзя значения массива ячеек занести в массив, типа @array = $sheet->Range("A1:$last_cell")->{Value}; чтобы потом по отдельности обращаться? Подскажите, пожалуйста. |
|||
|
||||
nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 2 Всего: 84 |
Nandy, вы в курсе - "что есть и будет ссылки"
![]() $array->[0] - первое знач. в массиве ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl: Системное программирование" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Системное программирование | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |