Windows下CMD和Tomcat設定編碼為UTF-8

SoulTraitor發表於2024-03-02

由於日常編寫程式碼,都是使用UTF-8編碼,而CMD預設是GBK編碼,導致執行mvn命令時,出現中文亂碼問題,而chcp命令只在當次開啟有效,每次開啟都要重新切換內碼表十分不便。

對於CMD,可以透過修改登錄檔的方式,永久修改預設內碼表。開啟登錄檔編輯器,定位到\HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe,將其中的CodePage項修改為十進位制的65001即可。

而使用Tomcat執行war包時,會發現日誌中中文依舊是亂碼,原因是Tomcat新視窗開啟的命令列預設是GBK編碼,同時本身的配置檔案又指定輸出編碼為UTF-8,導致衝突。此時同樣可以透過修改登錄檔來修改預設的編碼。

開啟登錄檔編輯器,定位到\HKEY_CURRENT_USER\Console,和剛才的CMD項同級新增一項Tomcat,然後在其中新建一個DWORD值PageCode,值設為十進位制的65001即可。

相關文章