use Encode; chdir ($scandir); opendir(DIR,'.'); @files=grep {-f $_} readdir(DIR); # this line tells Perl to interpret the filenames as utf8, # and once done, your umlauts should appear @files = map{ decode('utf8',$_) } @files;