注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

gmd20的个人空间

// 编程和生活

 
 
 

日志

 
 

Perl 示例 文件读取 时间函数 和散列  

2011-07-15 15:56:19|  分类: 程序设计 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
#!/usr/bin/perl

my %table;

sub createTable {
    my $line;
    open(FILE1,"b.txt") || die "打不开文件b";
     
    while ($line = <FILE1>) {         
         if ($line=~/^(\w+,\w+)(,.*\n)/){
                my $type = $1;
                $table{$type} = $2;
                #print "$1 -- $2\n";
         }          
    }
    close (FILE1);
}

sub main {

   open(OUTFILE, ">c.txt")|| die "打不开文件c";
   open(FILE2,"a.txt")    || die "打不开文件a";
     
   my $i;
   my  $oldtime  =   time();
   my  $newtime  =   time();
   
   while ($line = <FILE2>) {
         chomp($line);   
         if ($line=~/,(\w+,\w+)$/){         
                my $type = $1;             
                
                print OUTFILE  $line . $table{$type} ;    
                #print "$line | $type | $table{$type}\n";
                $i++;
                if ($i %10000 ==0) {   
                      $newtime   = time();
                      $newtime = $newtime - $oldtime;  
                      print "处理了 $i 条记录,耗时 $newtime 秒\n";                    
                }
         }     
   }
   close (FILE2);
   close(OUTFILE);
   
   $newtime = time();
   $newtime = $newtime - $oldtime;  
   print "总共处理了 $i 条记录,总耗时 $newtime 秒\n";   
}

createTable();
main();
  评论这张
 
阅读(467)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017