CMD窗口顯示UTF-8字符。簡單辦法讓VC、VS顯示UTF-8字符

1、打開CMD.exe命令行窗口
2、通過 chcp命令改變代碼頁,UTF-8的代碼頁爲65001

chcp 65001 # 切換代碼頁到UTF-8
chcp 936   # 恢復默認顯示,GBK

執行命令後如下圖:

執行:chcp 65001命令後截圖

執行該操作後,代碼頁就被變成UTF-8了。但是,在窗口中仍舊不能正確顯示UTF-8字符。

3、修改窗口屬性,改變字體

在命令行標題欄上點擊右鍵,選擇"屬性"->"字體",將字體修改爲"Lucida Console"字體,然後點擊確定將屬性應用到當前窗口。

修改字體

4、讓VC、VS顯示UTF-8字符

測試代碼:

#include <stdio.h>
#include <conio.h>
#include <windows.h>

int main(void)
{
    system("chcp 65001");
    printf("Hello World\n涓浗\n");//UTF-8在GBK下顯示的亂碼
    getch();
    return 0;
}

VC、底一點版本的VS(測試時使用VS2008)默認使用:ANSI來編碼的(中文系統就用GB2312)

或者把以下代碼保存爲UTF-8格式的源代碼文件(可用Notepad++來轉換成UTF-8格式)

#include <stdio.h>
#include <conio.h>
#include <windows.h>

int main(void)
{
    system("chcp 65001");
    printf("Hello World\n中國\n");
    getch();
    return 0;
}

實際上,上面兩個代碼正確輸出後是一樣的,只是強制使用其它編碼顯示會是亂碼

將上邊的代碼編譯運行後,再修改屬性的字體就可以達到顯示UTF-8字符了(修改字體後需要重新運行一次才能正確顯示

編譯運行

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章