use Encode; # ... read the html file into $html, and then: from_to( $html, "cp1252", "utf8" ); # now $html contains utf8 data instead of cp1252 data #### open( HTML, "<:encoding(cp1252)", $filename ); # now text will be converted from cp1252 to utf8 # as it is read from the file.