问题
I'm trying to convert a UTF-16BE encoded file (byte order mark: 0xFE 0xFF) to UTF-8 using iconv like so:
iconv -f UTF-16BE -t UTF-8 myfile.txt
The resulting output, however, has the UTF-8 byte order mark (0xEF 0xBB 0xBF) and that is not what I need. Is there a way to tell iconv (or is there an equivalent encoding) to not put a BOM in the UTF-8 result?
回答1:
Experiment shows that indicating UTF-16
rather than UTF-16BE
does what you want:
iconv -f UTF-16 -t UTF-8 myfile.txt
来源:https://stackoverflow.com/questions/11571665/using-iconv-to-convert-from-utf-16be-to-utf-8-without-bom