我要在linux下使用perl来处理excel文件 15

我要在linux下使用perl来处理excel文件,使用Spreadsheet::WriteExcel,但是只有Spreadsheet::WriteExcel->new创... 我要在linux下使用perl来处理excel文件,使用Spreadsheet::WriteExcel,但是只有Spreadsheet::WriteExcel->new创建一个新表格,而我要处理已有的文件,文档上没有看到open的操作,到底应该怎么做呢? 展开
 我来答
xdruid
2012-01-16 · 超过31用户采纳过TA的回答
知道答主
回答量:111
采纳率:0%
帮助的人:84.2万
展开全部
你可以用Spreadsheet::ParseExcel先解析excel,再用Spreadsheet::WriteExcel写入。
或者直接使用Spreadsheet::ParseExcel::SaveParser。
willshdanvis
2012-01-11 · TA获得超过1018个赞
知道大有可为答主
回答量:2042
采纳率:100%
帮助的人:1362万
展开全部
你可以参考这段script:

use Spreadsheet::ParseExcel;  
use Encode;  
  
my $oExcel = new Spreadsheet::ParseExcel;  
my $oBook = $oExcel->Parse("$filename");  
my($iR, $oWkS, $oWkC);  
my ($nnn,$mmm);  
print "FILE  :", $oBook->{File} , "\n";  
print "SHEETCOUNT :", $oBook->{SheetCount} , "\n";  
for(my $iSheet=0; $iSheet < $oBook->{SheetCount} ; $iSheet++)  
{  
    $oWkS = $oBook->{Worksheet}[$iSheet];  
    for(my $iR = $oWkS->{MinRow} ; defined $oWkS->{MaxRow} && $iR <= $oWkS->{MaxRow} ; $iR++)  
    {  
        $oWkC = $oWkS->{Cells}[$iR][0];  
        if($oWkC){  
            $nnn = $oWkC->Value;  
            $mmm = encode("euc-cn",$nnn);  
            $UserData{$mmm} = $SP{$mmm} if($SP{$mmm});  
        }  
    }  
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式