Spreadsheet::ParseExcel Spreadsheet::ParseExcel::FmtUnicode Unicode::Map |
可以支持中文,具体也没有要仔细说明的,直接看代码熟悉以上的模块吧!
execl2txt:
use strict; use Spreadsheet::ParseExcel; unless($ARGV[0] && $ARGV[1]) # Chinese support my $code = "CP936"; my $oExcel = new Spreadsheet::ParseExcel; my $worksheet = $doc->{Worksheet}[0]; # Get the excel data for(my $row_num = $worksheet->{MinRow};$row_num <= $worksheet->{MaxRow};$row_num++) if($col_num != $worksheet->{MaxCol}) } } # Write to file open FH,">$outfile"; |
use strict; use Unicode::Map; unless($ARGV[0] && $ARGV[1]) my $filename = $ARGV[1]; my $workbook = Spreadsheet::WriteExcel->new($filename); # Chinese support my $Map = new Unicode::Map("GB2312"); # Convert word to unicode sub w2u my $row = 0; open FH,$tmp_filename or die"file open error.\n"; |
use strict; use Spreadsheet::ParseExcel; my $local_enc = "CP936"; unless($ARGV[0] && $ARGV[1]) my $oFmtJ = Spreadsheet::ParseExcel::FmtUnicode->new(Unicode_Map => $local_enc); my $last_sheet = $book->{SheetCount} - 1; my $filename = $ARGV[1]; next my @row = $worksheet->{MinRow} .. $worksheet->{MaxRow}; for my $row ( @{ $worksheet->{Cells} }[ @row ] ) { } |
use strict; die("Usage: $0 [input filename(s)]\n") if (scalar @ARGV == 0); my $xl = Spreadsheet::WriteExcel->new('output.xls'); foreach my $filename (@ARGV) { my $wsname = $filename; my $row = 1; |