今天做老師布置的作業時,我的VS2019突然出現了亂碼。

我意識到這並不是普通的亂碼,果然修改源文件編碼沒有效果。
之后嘗試了長時間重置用戶配置、修復、重裝后問題依然沒有解決。氣急敗壞的我拿起我的另一台新電腦,安裝了VS2019,一點一點地對比不同。
最后我發現了一點不一樣的地方。

就是這個CodePage,我的新電腦的936(GB2312)是顯示正常的,然后舊電腦的65001(UTF-8)是亂碼的。所以問題就在這里吧,接下來就是如何把代碼頁修改回936的問題了。
修改代碼頁
控制台的代碼頁可以用dhcp來修改,比如要改成GB2312就是chcp 936。
然鵝,修改完控制台代碼頁后控制台的代碼頁是改過來了,但是VS2019的調試控制台仍然是65001(吐血)。
之后我又查找了各種網上的資料,甚至用上了英文,還是沒有找到方法。
於是,我換了一種思路,控制台的代碼頁可能是由注冊表控制的。於是,我便查找了如何用注冊表方法修改代碼頁。
不得不說我的運氣真是太好了,剛打開那個文件夾就看到了cmd附近的Visual Studio顯眼的大字。

那么解決辦法就有了。
解決辦法
打開注冊表編輯器(regedit)找到“計算機\HKEY_CURRENT_USER\Console\”文件夾下的與Visual Studio相關的文件夾,把Codepage項的值(65001)改成936就可以了。
測試

經過測試,調試控制台的代碼頁已經為936,並且亂碼問題也已經恢復了。
研究了一個多小時了,希望我踩的坑能幫助到各位。
