我习惯使用vim来修改文件的行结尾:
$ file file
file: ASCII text, with CRLF line terminators
$ vim file
:set ff=mac
:wq
$ file file
file: ASCII text, with CR line terminators
是否可以使用类似的过程来更改文件的unicode编码?我正在尝试以下方法,但这不起作用:
$ file file.xml
file.xml: Unicode text, UTF-16, little-endian
$ vim file
:set encoding=utf-8
:wq
$ file file.xml
file.xml: Unicode text, UTF-16, little-endian
我看到someone say他可以“设置fileencoding = utf-8,然后更新并编写文件,它可以正常工作”,但我似乎错过了一些东西,否则他很困惑。我不知道他的意思是“然后更新。”
答案 0 :(得分:238)
答案 1 :(得分:155)
答案 2 :(得分:77)
虽然使用vim完全可以,但为什么不简单地使用iconv?我的意思是 - 加载文本编辑器只是为了进行编码转换,似乎使用太大的锤子来制作太小的钉子。
只需:
iconv -f utf-16 -t utf-8 file.xml > file.utf8.xml
你已经完成了。
答案 3 :(得分:51)
就像您的步骤一样,设置fileencoding应该可行。但是,我想添加一个“set bomb”来帮助编辑将文件视为UTF8。
$ vim file
:set bomb
:set fileencoding=utf-8
:wq
答案 4 :(得分:4)