一次永久解決cmd窗口漢字顯示亂碼
對於編譯出的程序,在 cmd 和 power shell 運行時都不能正確顯示漢字。
網上查,可以再命令窗口修改:
1、打開CMD.exe命令行窗口
2、通過 chcp命令改變代碼頁,UTF-8的代碼頁為65001
chcp 65001
chcp 936
執行該操作后,代碼頁就被變成UTF-8了。
在當前窗口的確可以解決問題,但是重新打開的cmd窗口或者power shell 窗口仍然不能正確顯示漢字。
最終發現,cmd的屬性設置可以在注冊表中修改,實現一次修改永遠有效:
1. win+R 輸入regedit 進入注冊表
2. 找到 HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe 如果 該項下已存在CodePage項,則把值改為十進制”65001”;如果不存在,在該項下新建一個 DWORD(32位值),命名為“CodePage”,值設為“65001”
3. 重啟cmd后生效
4. 對於Power shell修改同樣,只需在第2步修改
%SystemRoot%_system32_WindowsPowerShell_v1.0_powershell.exe 下的項。
附錄:
MS-DOS為以下國家和語言提供字符集:
代碼頁描述
1258 越南語
1257 波羅的語
1256 阿拉伯語
1255 希伯來語
1254 土耳其語
1253 希臘語
1252 拉丁 1 字符 (ANSI)
1251 西里爾語
1250 中歐語言
950 繁體中文
949 朝鮮語
936 簡體中文(默認)
932 日語
874 泰國語
850 多語種 (MS-DOS Latin1)
437 MS-DOS 美國英語