mrmick has asked for the wisdom of the Perl Monks concerning the following question:
I'm looking for a way to read a file with records such as follows:
I would like to take these and using a hash for each unique ID, build an array of hashes within it for the other fields. I came up with the following and it does not work. I'm hoping one the enlightened ones could help me. I know that I'm just being really dense here but I spent all afternoon yesterday trying to figure it out and it never seems to quite work. Please Help..... and tell me what I'm doing wrong. Humbly yours - MickID|LastName|FirstName|TimeIN|TimeOUT 0001|Flintstone|Fred|0900|1300 0001|Flintstone|Fred|0900|1100 0001|Flintstone|Fred|1200|1630 0002|Flintstone|Wilma|0900|1500 0002|Flintstone|Fred|0930|1100 0003|Rubble|Barney|0900|1100
#load the data... while(<FILE>){ chomp; @result = split (/\|/); my @rec = ({LastName=>$result[1], FirstName=>$result[2], TimeIN=>$ +result[3], TimeOUT=>$result[4]}); $thisrecord = \@rec; push @{$ID{$result[0]}},$thisrecord; } close(FILE); #print the data foreach $key(sort keys %ID){ print "$key\n"; foreach (@{$ID{$key}}){ print "$_->{gender}\n"; } }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
RE: Nested Data Structure Problems
by davorg (Chancellor) on Jul 27, 2000 at 19:15 UTC | |
|
Re: Nested Data Structure Problems
by merlyn (Sage) on Jul 27, 2000 at 19:11 UTC | |
|
RE: Nested Data Structure Problems
by ferrency (Deacon) on Jul 27, 2000 at 19:19 UTC | |
by mrmick (Curate) on Jul 27, 2000 at 20:57 UTC |