在命列提示視窗的中文字亂碼,是因為編碼問題,在 windows 中文系統中,命令提示視窗預設編碼是 Big5,當檔案是 UTF-8 編碼時,檔案讀取中文字會因為編碼不同而變成亂碼。
例如下圖:
這時候可以透過 chcp
指令來變更預設編碼,透過查詢 Code Page 上的 UTF-8 編碼是 65001,直接進行指令設定
1 | chcp 65001 |
不過需要注意的是,命令提示字元切換成 UTF-8 後,中文輸入法不能使用,不過我是使用 cmder 就沒有這個影響了,而在 cmder 中,可以將 chcp 直接設定在 Setting ,這樣就不會影響命令提示字元
設定路徑是
Settings–>Startup–>Environmnet
然後將chcp 65001
輸入
不過使用 UTF-8 編碼還是有個缺點,就是行文字過長時,中文字將會重疊,所以要不要使用,看情況決定囉。