If I open a file ( and specify an encoding directly ) :
open(my $file,\"<:encoding(UTF-16)\",\"some.file\") || die \"error $!\\n\"; while(<$file>) {
You need to specify either UTF-16BE or UTF-16LE. See http://perldoc.perl.org/Encode/Unicode.html#Size%2c-Endianness%2c-and-BOM