use strict; use warnings; use Text::CSV qw( ); my $csv = Text::CSV->new(); my %Employee_Field_Idx_Lkup = ( Emp_No => 0, Emp_Lname => 1, Emp_Fname => 2, Emp_SSN => 3, Emp_DOB => 4, Emp_aka => 5, ); open(my $fh_in, '<', 'input.txt') or die("Can't open input.txt: $!\n"); while (<$fh_in>) { $csv->parse($_) or die("Incorrectly formatted line ($.)\n"); my @fields = = $csv->fields(); my %Employee_Rec; @Employee_Rec{keys %Employee_Field_Idx_Lkup} = @fields[values %Employee_Field_Idx_Lkup]; print "$Employee_Rec{Emp_No} \n"; print "$Employee_Rec{Emp_Lname} \n"; print "$Employee_Rec{Emp_Fname} \n"; print "$Employee_Rec{Emp_SSN} \n"; print "$Employee_Rec{Emp_DOB} \n"; print "$Employee_Rec{Emp_aka} \n"; }