解决方法
最好的方法是使用
Spreadsheet::ParseExcel.
这是一个例子:
#!/usr/bin/perl -w use strict; use warnings; use Spreadsheet::ParseExcel; my $parser = Spreadsheet::ParseExcel->new(); my $workbook = $parser->parse('Book1.xls'); for my $worksheet ( $workbook->worksheets() ) { 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 ) { my $cell = $worksheet->get_cell( $row,$col ); next unless $cell; print "Row,Col = ($row,$col)\n"; print "Value = ",$cell->value(),"\n"; print "Unformatted = ",$cell->unformatted(),"\n"; print "\n"; } } }
要使用Perl将Excel文件转换为文本,我建议使用使用Spreadsheet :: ParseExcel的excel2txt.