使用iconv将UTF-16BE转换为UTF-8而不使用BOM

Edw*_*son 10 text utf-8 utf-16 iconv

我正在尝试使用iconv将UTF-16BE编码文件(字节顺序标记:0xFE 0xFF)转换为UTF-8,如下所示:

iconv -f UTF-16BE -t UTF-8 myfile.txt
Run Code Online (Sandbox Code Playgroud)

但是,结果输出具有UTF-8字节顺序标记(0xEF 0xBB 0xBF),这不是我需要的.有没有办法告诉iconv(或者是否存在等效的编码)将BOM放入UTF-8结果中?

Kei*_*son 17

实验表明,UTF-16而不是UTF-16BE你想做什么:

iconv -f UTF-16 -t UTF-8 myfile.txt
Run Code Online (Sandbox Code Playgroud)

  • 工作,但仍然好奇为什么它的工作方式.我的实验也以这种方式引导我,但感谢你试一试. (4认同)