close($csvfile); # <== Was soll das denn?? open(my $output,'>',$osmfile) or die "can not open osm output file"; # <== Fehlermeldung nicht vergessen! "," nicht "." das ist sicherer my @value = split(/;/,$dataline); # <== ich hoffe das keine entweteten Semikola (\;), oder welche innerhalb von anfürungszeichen vorkommen