use strict; use warnings; use Text::CSV; open my $fh, "<:encoding(utf8)", "test.csv" or die "test.csv: $!"; my @rows = column_segregation( $fh, 2 ); print "$_\n" for @rows; close $fh; sub column_segregation { my ( $io, $o ) = @_; my $csv = Text::CSV->new ({ binary => 1 }); my @array_A2; while (my $row = $csv->getline($io)) { push @array_A2, $row->[$o]; } return (@array_A2); }