国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
關(guān)于linux中的字符編碼 - system - 在路上
關(guān)于linux中的字符編碼
在linux中時常會碰到亂碼的問題,前兩天和fxq討論了一下這個問題,現(xiàn)總結(jié)如下。先通過一個實(shí)驗(yàn)來說明問題:我的/etc/sysconfig/i18n中的配置為LANG="zh_CN.UTF-8",即我的系統(tǒng)使用的UTF-8字符集,我的終端中的設(shè)定字符編碼為當(dāng)前區(qū)域UTF-8,我的終端輸出是正常的。現(xiàn)在把設(shè)定字符編碼改為GB18030,然后在一個有中文文件名的目錄下執(zhí)行l(wèi)s -l,發(fā)現(xiàn)ls自己輸出的“總計”兩個字和所有中文文件名都是亂碼,如果把LANG改為zh_CN.GB18030,那么"總計"這兩個字可以正常顯示,但是文件名仍然是亂碼,也就是說程序(ls)的輸出會根據(jù)當(dāng)前的LOCALE選擇相應(yīng)的字符集,而文件名是按照原來的LOCALE指定的編碼寫到磁盤中的,不會再隨當(dāng)前的LOCALE發(fā)生。不管是程序自己輸出的,還是文件名,都要滿足查看使用的字符集和文字本身的字符集是一致的。

為什么在掛載U盤的時候要指定字符集,這是因?yàn)閣indows對于文件名是強(qiáng)制使用UNICODE編碼的,需要linux中的vfat這個文件系統(tǒng)把UNICODE轉(zhuǎn)化為終端可以識別的字符集。

UNICODE字符集包含了各種文字的編碼,以兩個字節(jié)表示一個字符,。在UNICODE中以兩個0表示字符串的結(jié)束,這樣在linux上處理unicode的字符串不是很方便。于是linux采用了另外一種字符集utf-8,它是把unicode的一種一一映射,原來UNICODE使用0加上一個字符表示的那些字符轉(zhuǎn)化成一個字符,比如ASCII碼,而原來用兩個非0字節(jié)表示的字符而用3個字節(jié)來表示:

echo "中國" > test
wc -c test
7
結(jié)果是7,是因?yàn)檫€包括一個回車符0xa
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
關(guān)于文本亂碼的問題
ASCII, GB2312, Unicode , UTF-8 - 靈感點(diǎn)滴
Qt跨平臺編程之中文編碼問題
SecureCRT顯示亂碼的解決辦法(centos)
unicode編碼
EF BB BF Unicode簽名BOM(Byte Order Mark)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服