1
#!"C:\Perl64\bin\perl.exe"
use CGI;
use strict;
use Spreadsheet::ParseExcel;
my $FileName = "C:\excel\Onsite_Report(15).xlsx";
my $parser = Spreadsheet::ParseExcel->new();
my $workbook = $parser->parse($FileName);
die $parser->error(), ".\n" if (!defined $workbook);
# Following block is used to Iterate through all worksheets
# in the workbook and print the worksheet content
for my $worksheet ($workbook->worksheets()) {
# Find out the worksheet ranges
my ($row_min, $row_max) = $worksheet->row_range();
my ($col_min, $col_max) = $worksheet->col_range();
for my $row ($row_min .. $row_max) {
for my $col ($col_min .. $col_max) {
# Return the cell object at $row and $col
my $cell = $worksheet->get_cell($row, $col);
next unless $cell;
print "Row, Col = ($row, $col)\n";
print "Value = ", $cell->value(), "\n";
}
}
}
Выдает ошибку File not found
, но путь правильный. Пожалуйста посоветуй.
EDIT
добавил - warn -e $FileName ? "File exists":"File does not exist";
ERROR
Perl - Файл не найден
Unrecognized escape \O passed through at perltest2.cgi line 6.
File does not exist at perltest2.cgi line 10.
File not found.
Невозможно воспроизвести проблему в моей системе (Win7). Если ошибка «Файл не найден», то это потому, что синтаксический анализатор не может найти ваш файл. Попробуйте добавить 'warn -e $ FileName? «Файл существует»: «Файл не существует» перед вашим оператором die для проверки того, что Perl может видеть файл. – TLP
Кроме того, вы действительно должны «использовать предупреждения». – TLP
Вы действительно используете 'C: \ excel \ Onsite_Report (15) .xlsx'? – RobEarl