perl比较两个文件字符串的实例代码

646 查看

需求:取文件1中的一行,和文件2中所有的数据进行比较,有相同的保存起来,否则删除。
复制代码 代码如下:

#!/usr/bin/perl
#use strict;
open(FILE1,"C:/Perl/BX/BX-Users.txt");
open(FILE2,"C:/Perl/BX/BX-Book-Ratings.txt");
open(result1,">C:/perl/BX/BX-Users_result.txt");
my $i=0;
my $j=0;
while((my $bxUser=<FILE1>)&&($i<10))
{
    my $userId=substr($bxUser,0,index($bxUser,","));
    while(my $rankUser=<FILE2>)
    {
        my $userIdCmp=substr($rankUser,0,index($rankUser,","));
        if(($userId==$userIdCmp)&&($j==0))
        {
            syswrite(result1,"$bxUser");
            $j++;
        }
    }
    $j=0;
    $i++;    
}
close(FILE1);
close(FILE2);
close(result1);