sub fill_table() { my ($datei,$src_path,$delimiter,$header) = @_; open (IFILE, "< $src_path$datei") or die "can't open $src_path$datei: $!\n"; # in $0 steht der Skriptname my $z = 0; while(my $BomLine = ){ $z++; my @Bom = split(/\Q$delimiter/, $BomLine); # benutz das \Q!!! $cols= @Bom; for (0..(scalar(@Bom) -1)){ $arrayVar->{$z.','.($_ + 1)} = $Bom[$_]; } } 1 while ; $zeilen=$.; close IFILE; # Filehandle schließen - das hast Du komplett vergessen! }