#!/usr/bin/perl -w use File::Spec; use utf8; my $infile = File::Spec->catfile("C:/temp/", "foo.txt",); if (-e($infile)) { print ("I can see $infile\n"); # Works fine --> if (!(open my $in_fh, "<$infile")) { if (!(open my $in_fh, "<:encoding(utf8)", "$infile")) { my $message = __LINE__.": Cannot open $infile\n:$!:\n"; print ($message); } } else { print ("No in file $infile\n"); } print ("Hello\n");