出現問題的情況,在windows下編輯好的文件放到linux下打開發現有中文亂碼的情況,但是查看vi的編碼格式已經是utf-8。
下面我們分析一下出現問題的原因:
出現亂碼的情況只有一種就是編碼格式的問題,既然是編碼問題就需要分析編碼格式。首先,linux中默認的本地編碼為utf-8,fileencoding是latin1;但是文件是在windows下拷貝過來就意味着有風險,此風險是因為在windows下打開過的文檔有可能會有格式的變化,或者文檔直接是在windows下編輯的,導致編碼格式是GBK或者GB…等格式,不同的編輯軟件可能會有不同的編碼規范。所以就會出現問題。
既然找到問題了就有解決辦法了:
只需要將vi的文件編碼添加支持GBK就可以了,因此解決時只需要在vi中輸入以下命令:
:edit ++enc=cp936,或者:edit ++ enc=GBK,也可以簡寫為:e ++enc=cp936
但是該命令是將文檔多添加了一個打開的編碼選項,在vi中的設置只能臨時有效。