VSCode中解決終端的中文亂碼問題


VSCode 與 cmd 兩者之間的編碼方式不一樣:VSCode 默認是 utf-8 編碼,而在中國地區下的 Windows 的 cmd 默認是 GBK 編碼。

方法一

VSCode終端其實調用的是cmd.exe,所以當這里出現中文亂碼的時候要解決的是cmd的編碼設置問題。

  1. 可以通過 chcp 命令查看 cmd 的編碼設置,GBK2312 的代碼頁編號是 936,然后改成utf-8的編碼即可,
  2. utf-8 對應的代碼頁編號是 65001 ,所以執行  chcp 65001 就可以把cmd的編碼設置成uft-8了,
  3. 這樣就解決了亂碼問題,然后可以再次運行代碼查看輸出 

 

當然每次使用都輸入一遍 chcp 65001 太煩了 ,可以直接在setting.json 中加上 

"code-runner.executorMap":{
        "cpp":"chcp 65001 "
    },

方法二

若是按F5啟動調試出現亂碼,則可以按

  • 具體操作步驟    文件——>首選項——>設置——>搜索設置——>encoding——>Files:Encoding ——> gbk 修改實現

VScode默認是UTF-8編碼格式,我們要做的是更改VScode的默認編碼格式為GBK。

下面是有關gbk和UTF-8編碼方式的簡單介:

  • GBK全稱《漢字內碼擴展規范》(GBK即“國標”、“擴展”漢語拼音的第一個字母,英文名稱:Chinese Internal Code Specification) ,中華人民共和國全國信息技術標准化技術委員會1995年12月1日制訂,國家技術監督局標准化司、電子工業部科技與質量監督司1995年12月15日聯合以技監標函1995 229號文件的形式,將它確定為技術規范指導性文件。這一版的GBK規范為1.0版。
  • UTF-8(8-bit Unicode Transformation Format)是一種針對Unicode的可變長度字符編碼,又稱萬國碼,由Ken Thompson於1992年創建。現在已經標准化為RFC 3629。UTF-8用1到6個字節編碼Unicode字符。用在網頁上可以統一頁面顯示中文簡體繁體及其它語言(如英文,日文,韓文)。

 

方法三

在node.js的調試過稱中,經常需要在終端中使用console.log()輸入一些變量,然而windows的cmd默認是GBK編碼,在調試的過程中會出現亂碼。

幸好VScode提供的對內置控制台的運行參數設定,我們可以通過 terminal.integrated.shellArgs.windows 選項對內置控制台的運行進行參數設定

通過打開“文件”--“首選項”--“用戶設置”,然后在setting.json中設置:

{
    "editor.fontSize": 18,
    "terminal.integrated.shellArgs.windows": ["/K chcp 65001 >nul"],
    "terminal.integrated.fontFamily": "Lucida Console",
}

/K chcp 65001 >nul 的含義是在運行cmd的時候將編碼設置為  65001;

>nul 是避免在控制台輸出修改編碼的信息,否則會輸出  active code page: 65001

同時,把字體修改為 Lucida Console

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM