office文件亂碼怎么辦?
一般來說只需要正確設置vim的編碼識別序列就很少會遇到亂碼問題:
這個設置是有順序的,一般原則是盡可能把比較獨特、不會和別的編碼混淆的放在前面(例如ucs-bom,由于帶有BOM頭的關系很難和別的混淆),然后后面可以按照常用程度降序排列。latin1作為fallback放到最后。這個序列可能還不是很科學也不是很完整(日文、韓文這兩個也比較容易出錯的就沒有包括),但至少就我目前的使用情況來說(英文及一些ASCII擴展/變種、簡體和繁體中文)都沒有遇到過問題。如果有朋友知道更好的順序,歡迎回復或者直接修改我的回答。如果打開之后還是遇到了亂碼,那么就需要手動指定編碼了。注意,網絡上很多地方提到的設置“fileencoding”(注意不帶s)的方法是錯誤的。認真閱讀幫助文檔: When reading a file 'fileencoding' will be set from 'fileencodings'. To read a file in a certain encoding it won't work by setting 'fileencoding', use the |++enc| argument.當你打開一個文件以后,vim就已經選定好了編碼并且認為就是這個編碼了,set fileencoding只是修改你希望這個文件以什么編碼存在,相當于是設置保存時的編碼——一旦設置了不同的fileencoding之后這個文件就變成modified了,需要保存(編碼變了)。正確的做法是在打開文件時使用++enc參數:如果想重新打開當前文件的話就省略文件名somefile即可。這兒有一個wiki你可以看看:Reloading a file using a different encoding最后,不要碰encoding這個設置!這是vim的內部編碼,除非你確定知道你在干什么,否則一般不需要修改。