Windows コマンドプロンプト(cmd)の文字コードをUTF-8に変更!

  • URLをコピーしました!
このエントリーをはてなブックマークに追加
M1・M2 Macで起動するParallels「Windows11」仮想環境
M1・M2 Macで起動するParallels「Windows11」仮想環境
ふる
ふる

こんにちは!「ふる(プロフィール詳細)」です。

 

Twitterのフォロワーが10人しかいません!

どうかフォローください!

 

@na65125038

MOMOHUKU(ふる)

 

MOMOHUKU - にほんブログ村

 

Windows コマンドプロンプト(cmd)のデフォルトの文字コードはshift_jisです。

shift_jisを使っていると日本語の文字化けで100%困ります。

現在、ほとんどのアプリでUTF-8が使われているからです。

ということで、文字化け対策のために、コマンドプロンプト(cmd)の文字コードをUTF-8に変更したくなるわけです。

最初からコマンドプロンプト(cmd)がUTF-8だったら良いんですが、、、何か理由があるのかも知れませんが、、、。

ちなみにPowerShellも同じくデフォルトの文字コードはshift_jisです。なので、この記事で紹介するchcpコマンドはPowerShellにも使えます。

目次

コマンドプロンプト(cmd)を起動する

Windows 11 でコマンドプロンプトを起動する
Windows 11 でコマンドプロンプトを起動する

Windows 11でコマンドプロンプト(cmd)を起動しましょう。

検索欄から“cmd”と入力すればコマンドプロンプト(cmd)が表示されます。

そのまま“Enter”を押せば、コマンドプロンプト(cmd)が起動します。

コマンドプロンプトの文字コードを確認する

C:\Users\ユーザー名> chcp
現在のコード ページ: 932

C:\Users\ユーザー名> 

コマンドプロンプト(cmd)上でchcpコマンドを打てば、現在の文字コードの設定を確認できます。

932なので文字コードはshift_jisです。

shift_jisUTF-8で開いたりすると日本語が文字化けします。

なので、文字コードをUTF-8します。

shift_jisが文字化けする理由

shift_jisで「表示」という文字を、CGIスクリプト中に記述して出力すると「侮ヲ」と文字化けします。

shift_jisでは、日本語は1文字当り2バイトで表現されます。shift_jisの「表示」という文字コードは下記で表現されます。

文字
shift_jisコード955C8EA6

しかし、「表」の2バイト目の「5C」は、メタ文字(特殊文字)の「¥」の文字コードと重複します(shift_jisの場合)。 「¥」が文字列中にあると、コンピュータはこれをエスケープ記号として解釈し、次のように表示します。

  • (1) 95 5C 8E A6 … 記述時点
  • (2) 95 5C 8E A6 … 「5C」を「¥」と解釈し取り去る(その次の8Eをエスケープすると解釈)
  • (3) 95 8E A6 A6 … 展開結果
文字ヲ (半角)
shift_jisコード958EA6

最終的な表示として、文字コード「95 8E A6」の展開結果は上になります。

コマンドプロンプトの文字コードをUTF-8に変更する

C:\Users\ユーザー名> chcp 65001

chcp 文字コードで、コマンドプロンプトの文字コードを変更できます。

UTF-8の文字コードは65001です。

なのでchcp 65001で文字コードがUTF-8になります。

Active code page: 65001

C:\Users\ユーザー名> 

chcp 65001コマンドを打つとActive code page: 65001と表示され画面が切り替わります(再読み込みされます。)。

これで文字コードがUTF-8になりました。

UTF-8が使われる理由

UTF-8(Unicode)がよく使われる理由は、ASCIIとの互換があるからです。

大半がUnicodeとは言っても英語圏では、まだまだASCIIが使われています。UTF-8(Unicode)は、そのASCIIと互換性があるというのが大きな利点です。

またUTF-8にはエンディアンの問題もありません。

これがUTF-8が使われている理由です。

文字コード表

識別子.NET 名関連情報
932shift_jisANSI/OEM 日本語;
日本語(Shift-JIS)
20127us-asciiUS-ASCII(7ビット)
65001utf-8Unicode(UTF-8)

shift_jis:932、UTF-8:65001などの文字コードの設定値は、当たり前ですがMicrosoftが決めています。

UTF-8以外にする人はいないと思いますが、、、

Microsoftの公式ページに文字コード表があるので、他の文字コードにしたい方は参考になるかと思います。

  • Microsoft コード ページ識別子
    • https://docs.microsoft.com/ja-jp/windows/win32/intl/code-page-identifiers

PowerShell もchcpコマンドが使える

PowerShell 7.2.6
Copyright (c) Microsoft Corporation.

https://aka.ms/powershell
Type 'help' to get help.

PS C:\Windows\System32> chcp
現在のコード ページ: 932

PS C:\Windows\System32>

PowerShell もデフォルトの文字コードはshift_jisです。

PowerShell も同じくchcp 文字コードコマンドで文字コードを変更できます。

Wondershare



5%OFF特別クーポンコード:2GAME5

M1・M2 Mac でITスキル向上「とりあえず、マイクラ鯖を立てよう」!

マインクラフト統合版サーバーに「nyandaisensei」でログイン!
マインクラフト統合版サーバーに「nyandaisensei」でログイン!

M1・M2 Mac でマイクラ鯖を構築すれば簡単にITスキルが向上します。マイクラ鯖を構築するだけでネットワークどころか会社で使える実用技術を芋づる式で獲得できます。

しかも、"Parallels"の仮想環境で作業するので"買いたてホヤホヤ"の新品Macの環境を一切汚しません。

M1・M2 Macを使う人はWindows仮想環境を構築するはずなので、どちらにしろ"Parallels"を必ず使うと思います。

Parallelsでマイクラ鯖

  • Ubuntu 22.04 LTS ARM64のLinux仮想環境
  • Linuxコマンド
  • Git
  • 仮想環境のネットワーク知識
  • 仮想環境はDockerにも応用

仮想環境なので何度でもスクラップできるのがメリットです。

特に、エンジニアの方にオススメです。

M1・M2 Macでの開発はParallels仮想環境でやりましょう!メインPCで開発するのは環境汚染です!

模範回答

Wondershare

Amazon 最新ランキング(ゲーム)

すべて無料の素材サイト「PixJam」

京都らしいお店
京都の画像を追加中

MOMOHUKUを見てくれてる人は、何かを作ることが好きな"クリエイター"の人たちが多いです。

そして、僕も何かを生み出すのが好きな"クリエイター"です。

"クリエイター"にとって、便利なのが「素材サイト」です。

「PixJam」は、商用利用も含めてすべて"無料"で使える「素材サイト」です。

「PixJam」はすべて無料で使える素材サイト!

  • ゆっくり実況で使う
  • イラスト制作に使う風景
  • 絵の練習用など

"無料"と断言できるのは「PixJam」を作ったのは「僕」だからです。

「PixJam」にある素材は、個人でも意識しないで気ままに利用できるように「かなり自由度の高い無料素材サイト」として利用規約をアレンジしています。

例えば、事業における販売(2次利用)も可能とするよう規約を工夫しています。

眺めてるだけでもアイデアに繋がるようなサイト構成にしています。

ぜひ、活用してみてください。

余談:今は頑張って素材を追加中!

「PixJam」は、僕が撮影した田舎の風景画像を追加していってます。

画像、動画、イラストの素材サイトと言いながら、まだ暫くの間は動画やイラストに手が出そうにありません。


5%OFF特別クーポンコード:2GAME5



コメント

コメントする

目次