chcp - 文字コードを切り替える

にメンテナンス済み

chcpコマンドは、コマンドプロンプトが使うコードページ(文字コードの種類)を確認・変更するコマンドです。

出力した文字が「縺ゅ>縺…」のように化けるときは、コマンドプロンプトの文字コードと、読み書きしているデータの文字コードが食い違っていることがほとんどです。chcpを使うと、その食い違いを解消できます。

chcpコマンドの基本構文

chcp [<コードページ番号>]

番号を省略すると現在のコードページを表示し、番号を指定するとそのコードページに切り替えます。

現在のコードページを確認する

引数なしで実行します。

chcp
- □ ×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>chcp
現在のコード ページ: 932
C:\users\user>

日本語版 Windows の既定は932(Shift_JIS 系)です。

コードページを変更する

切り替えたい番号を指定します。UTF-8 にするには65001です。

chcp 65001
- □ ×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>chcp 65001
現在のコード ページ: 65001
C:\users\user>
おすすめ書籍※ 広告を含む場合があります
中小企業経営者のためのRPA入門 RPA導入を成功させる方法

中小企業経営者のためのRPA入門 RPA導入を成功させる方法

60分でわかる! AIエージェント 超入門

60分でわかる! AIエージェント 超入門

コマンドラインの黒い画面が怖いんです。

コマンドラインの黒い画面が怖いんです。

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

元に戻すときはchcp 932を実行します。

主なコードページ

番号名称用途
932Shift_JIS(Windows 日本語)日本語版 Windows の既定
65001UTF-8UTF-8 のファイルや Web 系ツールの出力
437米国(OEM)英語版 Windows の既定
1252西ヨーロッパ(Windows)欧州言語のテキスト
効果の範囲

chcpで変更した内容は、そのコマンドプロンプトのウィンドウ(セッション)にのみ有効です。ウィンドウを閉じる、または別のウィンドウを開くと、既定のコードページに戻ります。

文字化けを直す

UTF-8 のファイルを表示したい

UTF-8 で保存されたテキストをtypeで表示すると、コードページ 932 のままでは文字化けします。chcp 65001で切り替えてから表示します。

chcp 65001
type utf8.txt

出力が化けるとき

外部ツールの出力が化ける場合は、そのツールが出力する文字コードにコードページを合わせます。ツールの出力が UTF-8 なら65001、Shift_JIS なら932です。

バッチファイルで一時的に切り替えて元に戻す

バッチファイルの中で UTF-8 を使い、終わったら元に戻すには、最初に現在の番号を控えておきます。

utf8.cmd
@echo off

for /f "tokens=2 delims=:" %%a in ('chcp') do set ORIG_CP=%%a
chcp 65001 >nul

type "%~dp0utf8.txt"

chcp %ORIG_CP% >nul

chcpの出力は表示言語によって文言が変わりますが、コロン(:)の後ろに番号が表示される点は共通のため、delims=:で取り出せます。>nulを付けると、「現在のコード ページ」というメッセージを非表示にできます。

UTF-8 のバッチファイル自体を実行するとき

日本語を含むバッチファイル(.cmd)自体を UTF-8 で保存して実行すると、環境によってラベルやgotoが正しく解釈されないことがあります。配布するバッチファイルは、Shift_JIS で保存するのが安全です。詳しくは文字化けの記事を参照してください。

文字コード全般の対策は encoding の記事へ

保存形式の選び方や、システム全体を UTF-8 にする設定など、文字化け対策の全体像は下の関連記事にまとめています。

関連記事

練習問題

練習問題

コマンドプロンプトの文字コードを UTF-8 に切り替えるコマンドはどれでしょうか?

回答がサーバーに送信されることはありません
練習問題

chcp 65001 を実行した場合の説明として正しいものはどれでしょうか?

回答がサーバーに送信されることはありません
#コマンドプロンプト #バッチファイル #コマンドライン #コマンド #文字化け #文字コード