2017-02-08 4 views
0

Я пытаюсь прочитать данные из excel, у меня есть код ниже.читать данные от excel in perl

#!/usr/bin/perl 
    use strict; 
    use warnings; 
    use 5.010; 
    use feature 'say'; 
    use Spreadsheet::XLSX; 
    use Spreadsheet::Read qw(ReadData); 
    my $book = ReadData ('/tmp/simple.xlsx'); 

    say 'A1: ' . $book->[1]{A1}; 

    my @row = Spreadsheet::Read::row($book->[1], 1); 
    for my $i (0 .. $#row) { 
     say 'A' . ($i+1) . ' ' . ($row[$i] // ''); 
    } 

    my @rows = Spreadsheet::Read::rows($book->[1]); 
    foreach my $i (1 .. scalar @rows) { 
     foreach my $j (1 .. scalar @{$rows[$i-1]}) { 
     say chr(64+$i) . " $j " . ($rows[$i-1][$j-1] // ''); 
     } 
    } 

получаю ошибку как:

 Can't locate OLE/Storage_Lite.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/local/share/perl5/Spreadsheet/ParseExcel.pm line 21. 
    BEGIN failed--compilation aborted at /usr/local/share/perl5/Spreadsheet/ParseExcel.pm line 21. 
    Compilation failed in require at /usr/local/share/perl5/Spreadsheet/XLSX.pm line 14. 
    BEGIN failed--compilation aborted at /usr/local/share/perl5/Spreadsheet/XLSX.pm line 14. 
    Compilation failed in require at read_excel.pl line 6. 
    BEGIN failed--compilation aborted at read_excel.pl line 6. 

Я каждый модуль связаны. но по ошибке, когда я собираюсь загрузить OLE/Storage_Lite.pm из CPAN, страница будет пустой, а из metacpan ниже будет ошибка.

 https://cpan.metacpan.org/authors/id/M/MS/MSCHWARTZ/OLE-Storage-0.386.tar.gz 
    Resolving cpan.metacpan.org... 151.101.128.249, 151.101.192.249, 151.101.64.249, ... 
    Connecting to cpan.metacpan.org|151.101.128.249|:443... connected. 
    ERROR: certificate common name “a.ssl.fastly.net” doesn’t match requested host name “cpan.metacpan.org”. 
    To connect to cpan.metacpan.org insecurely, use ‘--no-check-certificate’. 
+0

Возможный дубликат [Ошибка загрузки CPAN] (http://stackoverflow.com/questions/17127374/cpan-download-failing) – AbhiNickz

+0

oooh yours 'linux OS'? – ssr1012

+1

@ ssr1012: Пожалуйста, не рекомендуется, чтобы люди просто копировали модули CPAN в свои библиотечные каталоги. Существуют [рекомендуемые способы] (http://perldoc.perl.org/perlmodinstall.html) для установки модулей. –

ответ

1

Попробуйте загрузить модуль дегтя молнию от cpan или metacpan. Затем создайте модуль локально с помощью любой утилиты make (например, dmake). Вы можете найти дополнительную информацию для сборки модуля локально от here.

+0

спасибо, это помогло мне :) – ggupta

 Смежные вопросы

  • Нет связанных вопросов^_^