Мой сценарий Perl для преобразования .xls в .csvПреобразование файла .xls в CSV-файл?
use Spreadsheet::ParseExcel;
my $xlsparser = Spreadsheet::ParseExcel->new();
my $xlsbook = $xlsparser->parse('/home/Admin/Downloads/abc.xls');
my $xls = $xlsbook->worksheet(0);
my ($row_first, $row_last) = $xls->row_range();
my ($col_first, $col_last) = $xls->col_range();
my $csv = '/home/Admin/Downloads/ram.csv';
for my $row ($row_first .. $row_last) { # Step through each row
for my $col ($col_first .. $col_last) { # Step through each column
my $cell = $xls->get_cell($row, $col); # Get the current cell
next unless $cell;
$csv .= $cell->unformatted(); # Get the cell's raw data -- no border
# colors or anything like that
if ($col == $col_last) {
$csv .= "\n";
} else {
$csv .= ",";
}
}
}
open(my$FH ,'>',"$csv") or die "oops!";
while (my$line = <$xlsbook>){
print $FH $line;
}
Oops! на линии csv.pl 23.
Ошибка при опрокидывании. Что случилось в моем коде? Пожалуйста, найдите ошибку в моем коде. Спасибо заранее.
$ CSV изначально указывает на путь. Тогда почему вы добавляете данные в переменную. Когда вы открываете файл при открытии (мои $ FH, '>', "$ csv") или умирают «oops!»; содержит ли оно имя или содержание? – Raghuram
, содержащее только контент – Ram
Если этот вопрос идентичен [вашему предыдущему вопросу] (http://stackoverflow.com/q/21771708/725418) (который, как представляется,), вы должны добавить к нему новую информацию, а не открывать новый вопрос. В противном случае один из ваших вопросов может быть приостановлен как дубликат. – TLP