Deb wrote: > > Toby Stuart <[EMAIL PROTECTED]> had this to say, > > If i understand what u want, the following works (i'll leave the printing to > > another file up to you) > > Thanks for the quick reply, Toby. With your suggestions, here's what I > have (and it works, too). I have some questions about it, because, as I > said before, I think I understand hashes, just not what it takes to > manipulate them. But I'm too tired right now to form a good question. > I'll give this some thought and then post some questions.
Reading the perldata document might help. perldoc perldata > #!/usr/local/bin/perl > > use strict; > use warnings; > > my $fileout= "./stats.out"; > my $filein = $ARGV[0]; > my %totals; > my $date; > my $count; > > open (F, "$filein") || die "Oops, did you type the right filename?\n"; You should include the $! variable in the error message to find out why the error occured. open F, $filein or die "Oops, did you type the right filename? $!"; > while (<F>) > { > chomp($_); > ($date,$count) = split(/,/,$_); > $totals{$date} += $count; > } > close(F); > > while ( ($date,$count) = each %totals) > { > open (F,">>$fileout") || die "Cannot open $fileout for writing.\n"; > print F "$date : $count\n"; > } > close(F); There is no reason to open and close the file a lot of times, just open it once. open F, ">> $fileout" or die "Cannot open $fileout for writing. $!"; while ( ( $date, $count ) = each %totals ) { print F "$date : $count\n"; } close F; John -- use Perl; program fulfillment -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]