bat批處理腳本中文亂碼的解決
問題描述
bat 批處理腳本如下
@echo off echo hello,world. echo 你好,中國 pause
在 CMD 執(zhí)行該腳本時,出現(xiàn)了中文亂碼
問題分析
- 亂碼都跟字符編碼有關(guān)系。
- 計算機只能處理數(shù)字,如果遇到文本,必須先將其轉(zhuǎn)換為數(shù)字后才能處理,由此出現(xiàn)了字符編碼(字符集)。如果編碼時采用某種字符編碼,那么解碼時,必須得相對應(yīng)使用同一種字符編碼,如采用不同的字符編碼,會出現(xiàn)亂碼。
問題解決
1. 轉(zhuǎn)換腳本文件的編碼方式
默認(rèn)情況下,在 bat 腳本文件中,如果中文不是ANSI編碼,就會出現(xiàn)亂碼。因此,可以采用Windows操作系統(tǒng)平臺自帶的記事本打開腳本文件,點擊菜單【文件】-【另存為】操作,選擇ANSI編碼進行保存。
轉(zhuǎn)換編碼后,再次運行,中文亂碼問題得到解決。
2. 更改代碼頁
在原先 bat 腳本文件中聲明更改代碼頁
chcp 65001
再次運行,中文亂碼問題得到解決。
拓展 chcp 命令
Changes the active console code page.
常用代碼頁映射
代碼頁 | 映射的字符集 |
---|---|
936 | GB2312 |
20127 | US-ASCII |
65001 | UTF-8 |
到此這篇關(guān)于bat批處理腳本中文亂碼的解決的文章就介紹到這了,更多相關(guān)批處理中文亂碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
批處理設(shè)置windows服務(wù)器的代碼ThecSafe1.9.4
一個既是服務(wù)器安全設(shè)置工具,也是一個學(xué)習(xí)批處理非常好的教程。雖然入手看是難了點,只有帶著問題去學(xué)習(xí)才能真正的去了解。2008-01-01使用批處理清除事件查看器所有Windows EventLog日志的代碼
以前裝完系統(tǒng)后要做個Ghost,為了達到完美,每次做Ghost前都會手動清除 事件查看器所有Windows EventLog日志2012-03-03