#!/usr/bin/perl use strict; use warnings; use Text::CSV_XS; use Data::Dumper; my $csv = new Text::CSV_XS({sep_char => ';'}); open (FILE, '<', 'dummy_adressbook.txt') or die "Couldn't open file: $_\n"; my $rows; @$rows = map { [$csv->parse($_) and $csv->fields()] } (); close(FILE); die Dumper $rows;