Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

コマンドプロンプト起動時、自動的に文字コードをUTF-8にして日本語もちゃんと表示できるようにする方法

More than 5 years have passed since last update.

Windows7 でのみ動作確認済。XPとかだとうまくいかないかもっぽぃらしい。

前提知識

  • コマンドプロンプトのデフォルト文字コードは Shift_JIS
  • chcp コマンドで文字コードを変更できる
    • ただし、文字コードを変更しただけでは日本語を表示できない
    • 文字コードを変更しても、コマンドプロンプトを再起動するとデフォルトに戻ってしまう
  • そのため、以下2ステップを行う必要がある
    1. 文字コードが UTF-8 のときに使用するフォントを、日本語対応のものにする
    2. コマンドプロンプト起動時、自動的に文字コードが UTF-8 になるよう設定する

実際の手順

Step:1 使用フォントを日本語対応のもの(MSゴシック)にする (*1)

  1. コマンドプロンプトを実行する
  2. プロパティ > フォント > フォント で 【MSゴシック】を選択する
  3. コマンドプロンプトを終了する

Step:2 起動時に文字コードが UTF-8 になるようにする

Step:2-A レジストリを使う方法

  1. 適当な場所に、以下内容のバッチファイルを用意する
sample.bat
chcp 65001
  1. regedit 等で、レジストリの以下どちらかのキーを開く
    • HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor
    • HKEY_CURRENT_USER\Software\Microsoft\Command Processor
  2. 上記キーに以下項目を作成する (*2)
    • 名前:AutoRun
    • 値: (用意したバッチファイルのパス)

Step:2-B レジストリを使わない方法

  1. 適当な場所に、コマンドプロンプトのショートカットを作成する
  2. ショートカットのプロパティ > ショートカット > リンク先 に以下を追記する (*3)
    • /K "chcp 65001"
  3. 以降、コマンドプロンプトはこのショートカットから実行するようにする

Shift_JIS に戻したいとき

  • コマンドプロンプトで以下コマンドを実行する
    • chcp 932

注釈

  • (*1)
    • 以降、文字コードが UTF-8 の状態で プロパティを開くと以下のエラーメッセージが出るようになるが、無視する。

ポイント サイズには 5 から 72 を指定してください。

  • (*2)
    • ここで指定したバッチファイルは、コマンドプロンプト起動時に毎回最初に実行される。
  • (*3)
    • 起動時パラメータ。/K 以降に指定されたコマンドを実行する。

詳しい解説が書いてあるとこ

yufu
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away