• perl excel文件和txt转换


    excel2txt.pl

    #!/usr/bin/perl

    use strict;

    use Spreadsheet::ParseExcel;

    my $oExcel = new Spreadsheet::ParseExcel;

    die "Usage : \n\tperl $0 <xls> > xls.txt\n\n" unless @ARGV;

    my $oBook = $oExcel->Parse($ARGV[0]);
    my($iR, $iC, $oWkS, $oWkC);

    for(my $iSheet=0; $iSheet < $oBook->{SheetCount} ; $iSheet++){
            $oWkS = $oBook->{Worksheet}[$iSheet];
            for(my $iR = $oWkS->{MinRow} ; defined $oWkS->{MaxRow} && $iR <= $oWkS->{MaxRow} ; $iR++) {
                    for(my $iC = $oWkS->{MinCol} ; defined $oWkS->{MaxCol} && $iC <= $oWkS->{MaxCol} ; $iC++)  {
                            $oWkC = $oWkS->{Cells}[$iR][$iC];
                            print $oWkC->Value,"\t" if($oWkC);
                    }
                    print "\n";
            }
    }

    输入为xls格式,集群下可用。

    txt2excel.pl

    #!/usr/bin/perl
    use strict;
    use Encode qw(decode);
    use Spreadsheet::WriteExcel;
    my $workbook = Spreadsheet::WriteExcel->new("$ARGV[0].xls");
    my $worksheet = $workbook->add_worksheet();
    # Row and column are zero indexed
    my $row = 0;
    open IN,$ARGV[0] or die $!;
    while(<IN>){
            chomp;my @s = split;
            my $col = 0;
            foreach my $token(@s){
                    $worksheet->write_string($row,$col,decode('gb2312',$token));
                    $col++;
            }
            $row++;
    }
    close IN;

  • 相关阅读:
    mount挂载命令
    centos和redhat的区别
    查不认识字的方法
    Prometheus介绍及docker安装方式
    Pinpoint介绍及docker安装方式
    虚拟机安装linux
    yum命令
    docker命令
    PTA数据结构与算法题目集(中文) 7-43字符串关键字的散列映射 (25 分)
    PTA数据结构与算法题目集(中文) 7-42整型关键字的散列映射 (25 分)
  • 原文地址:https://www.cnblogs.com/xianghang123/p/2717254.html
Copyright © 2020-2023  润新知