前言
大家都知道,ubuntu系統(tǒng)對中文的支持還是比較友好,除了對text文件編碼的識別有點問題以外。
gedit直接打開中文txt文件
出現(xiàn)這種問題的原因是txt文件是在windows環(huán)境下生成,ubuntu下文本閱讀器如vim和gedit對文件編碼格式不能自動識別。
這里給出幾種可能的解決方案。
文件格式轉(zhuǎn)換
利用 dos2unix unix2dos unix2mac 等命令將txt文件從源操作系統(tǒng)轉(zhuǎn)換到目標(biāo)操作系統(tǒng)。
如果這幾個命令不存在,請使用下面的命令進行安裝。
1
2
|
sudo apt install dos2unix sudo apt install unix2dos |
使用如下命令進行格式轉(zhuǎn)換:
1
2
|
dos2unix [options] [ file ...] [-n infile outfile ...] unix2dos [options] [ file ...] [-n infile outfile ...] |
這種轉(zhuǎn)換會改變原來文件的一些屬性如生成時間等。如果文件需要從兩個不同操作系統(tǒng)進行訪問時,這個解決方案是不合適的。
.vimrc設(shè)置缺省編碼格式
這個解決方案適合我這樣的vim愛好者。
vim打開亂碼
解決問題的方法是按照下圖修改 /etc/vim/vimrc 或者是 /etc/vim/vimrc.local 文件。
/etc/vim/vimrc中會調(diào)用/etc/vim/vimrc.local。修改兩者中任一個都行。推薦修改/etc/vim/vimrc.local。
vimrc修改
然后再次使用vim打開同樣的文件,bingo,搞定。
vim正常打開文件
gedit強制限定編碼打開
gedit是ubuntu下強大的文本編輯軟件。直接使用gedit來打開中文txt文件是最有吸引力的解決方案。
其實這個解決方案更簡單。
首先使用 chardet3 來檢測文件的編碼格式。
chardet3 常用的正則表達式總結(jié).txt
運行的結(jié)果顯示該文件的編碼格式是gb2312:
常用的正則表達式總結(jié).txt: gb2312 with confidence 0.99
知道了編碼格式后可以在運行g(shù)edit時加入encoding選項,如下
gedit --encoding gb2312 常用的正則表達式總結(jié).txt
同樣可以正常打開該txt文件,如下圖所示。
gedit打開文件
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對服務(wù)器之家的支持。
原文鏈接:http://www.jianshu.com/p/f670269ceb87