in reply to best way to convert to UTF8 from UTF16

$ iconv -f UTF16 -t UTF8 file.UTF16.txt > file.UTF8.txt

If you need to do it programmatically, use Text::Iconv