让CMD窗口显示中文[JAVAC输出中文错误信息乱码的解决]
臨時解決方案:
在 CMD 中運行 chcp 936。
永久解決方案:
打開不正常的 CMD 或命令提示符窗口后,單擊窗口左上角的圖標,選擇彈出的菜單中的“默認值”,打開如下圖的對話框。單擊第一個“選項”選項卡,將默認的代碼頁改為 936 后重啟 CMD。
?
附:
如果改了以后無法生效,窗口的“默認值”和“屬性”沒變,進入注冊表,在 HKEY_CURRENT_USER 下找到 console 項下的 Console 以及其下可能有的 %SystemRoot%_system32_cmd.exe(這個 %SystemRoot%_system32_cmd.exe 下有的 codepage 話就改,如果沒有就不管它),codepage值改為 936(十進制)或 3a8(十六進制)。
936(十進制)/3a8(十六進制) 是簡體中文的,如是其它語言,要改為對應的代碼。然后再執行第二段中所述的操作。
?
還可能和 CMD 的默認值的“字體”設置有關。
在 CMD 的“默認值”和“屬性”的“字體”選項卡中中確認設定的字體是可以顯示中文字符的字體,并且確定字體文件沒有被破壞。字體最好設置為默認的點陣字體。
?
還是不行,干脆把%SystemRoot%_system32_cmd.exe內容備份下,然后清空它。或是把以下內容保存為REG文件導入試試。
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]
"QuickEdit"=dword:00000800
"CodePage"=dword:000003a8
"WindowSize"=dword:001e005a
"FontSize"=dword:000c0008
"FontFamily"=dword:00000030
"FontWeight"=dword:00000190
"FaceName"="Terminal"
當打開一個DOS(運行command,實際上運行的是ntvdm.exe程序)窗口或
CMD(運行cmd,實際上運行的是cmd.exe程序)窗口后,
在其窗口的上方藍邊界處右鍵點擊,在彈出的菜單中選擇“屬性”,
[當然這時候選“默認值”會出來一個與“屬性”一樣的界面,但是好像不能進行設置。]
在出來的屬性界面中的“選項”標簽下面有一個當前代碼頁,
如果為 437(OEM-美國)
那么這個窗口是不支持顯示中文的,
所以用CMD命令中的CHCP命令來解決:如下:
比如:CHCP 936
這樣就可以顯示中文了。
[不過CHCP命令好像改不了ntvdm.exe的代碼頁]
CHCP命令是用來顯示或設置活動代碼頁編號。
格式如下:
CHCP [nnn]
nnn 指定代碼頁編號。
不加參數鍵入 CHCP 顯示活動代碼頁編號。
nnn指定一已有的系統字符集,該字符集在CONFIG.SYS文件中由COUNTRY命令定義。
MS-DOS為以下國家和語言提供字符集:?
437 美國
850 多國語(Latin I)
852 斯拉夫語(Latin II)
860 葡萄牙語
863 加拿大語-法語
865 北歐語
936 中文
PS:
因為現在的JDK下載的時候是MultLanguage多語言版本的,JDK安裝完后后根據操作系統的語言環境選擇設置Local對象信息,從而使用相應的語言環境,如果不想使用中文信息,可將操作系統的語言環境改為英文,比如在Windows中的控制面板中的"區域和語言選項"-->"區域選項"-->"標準和格式"中,將語言格式設置為"英語(美國)"即可.
總結
以上是生活随笔為你收集整理的让CMD窗口显示中文[JAVAC输出中文错误信息乱码的解决]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kill -HUP 什么意思?
- 下一篇: AVG杀毒软件添加信任程序