パソコンの文字化け
画面に出た化けた文字をコピーして下に貼り付けると、元の文章に戻した候補を出します。例として、コマンドの結果に多い化け方を入れてあります。
すべての組み合わせ(20通り)
| 読み間違えた文字コード | 本当の文字コード | 戻した結果(はじめの40字) |
|---|
貼り付けた文章や開いたファイルはこのページの中だけで処理し、どこにも送信しません。保存するのは「この端末に設定を残す」にチェックを入れたときの設定だけで、文章やファイルは残しません。
メモ帳で開くと化けるとき
Windowsのメモ帳は、Windows 10 のプレビュー版(ビルド18298)のときに、BOMのないUTF-8で保存できるようになり、新しく作るファイルの既定もUTF-8になりました。Windows Insider のブログ(2018年12月10日)には、画面の下のステータスバーに、開いているファイルの文字コードが出るようになったことも書かれています。
そのため、古いソフトが作ったShift_JISのファイルをUTF-8のつもりで読むと「�」が並び、反対にUTF-8のファイルをShift_JISを前提にした古いソフトで開くと「縺」が並びます。まずステータスバーで、メモ帳がどの文字コードで読んでいるかを確かめてください。名前を付けて保存の画面の「エンコード」の欄について説明したMicrosoftの公式ページは見つからなかったため、ここでは手順を省きます。
Webページが化けるとき
HTMLの決まり(WHATWG HTML、2026年10月22日更新)では、Webページの文字コードはUTF-8にし、宣言は「utf-8」と書いて、ページの先頭から1024バイトの中に置くことになっています。ページを作る側は、head の最初のほうに meta charset="utf-8" を書いておくのが基本です。見る側で化けたとき、Chromeではエンコードの設定を変えられず、拡張機能で直す方法がある、とGoogleのMerchant Centerのヘルプに書かれています。化けた部分をコピーして上の欄に貼り付ける方法なら、ブラウザを問いません。
なお、URLに出てくる「%E3%81%82」のような並びは文字化けではなく、日本語の文字をUTF-8のバイト列にして、URLに使える文字で書いたものです。
PowerShellで化けるとき
Microsoftの説明(about_Character_Encoding)によると、PowerShell 7 以降は、すべての出力に既定で BOMのないUTF-8(utf8NoBOM)を使います。一方、Windows PowerShell 5.1 は、Out-File やリダイレクト(>)がUTF-16LEで、Set-Content や Get-Content は Default(ANSI、日本語のWindowsではShift_JIS)を使うなど、コマンドによって文字コードが違います。
- ファイルに書くときは、Out-File や Set-Content に -Encoding を付けて文字コードを決めます。
- いつも同じ文字コードにしたいときは、$PSDefaultParameterValues['*:Encoding'] で既定を決められる、と説明されています。
- $OutputEncoding は、PowerShellからほかのプログラムへパイプで渡すときだけに使われます。画面の表示を直す設定ではありません。
コマンドプロンプトとバッチファイルで化けるとき
コマンドプロンプトの文字は、コンソールのコードページで読まれます。chcp を何も付けずに実行すると今のコードページが表示され、番号を付けて実行すると切り替わります(Microsoft Learn の chcp の説明)。Microsoftのコードページの一覧では、932がShift_JIS、65001がUTF-8です。
バッチファイルを保存した文字コードと、コンソールのコードページが違うと、表示する日本語が化けます。UTF-8で保存したバッチファイルなら先頭で chcp 65001 を実行するか、バッチファイルをShift_JISで保存し直すと、両方がそろいます。
VS Codeとターミナルで化けるとき
VS Codeの説明(Basic Editing)では、設定の files.encoding で文字コードを決められ、画面右下のステータスバーの文字コードを押すと、別の文字コードで開き直したり保存し直したりできます。ファイルが化けて見えるときは、ここで日本語のShift_JISやUTF-8を選び直します。VS Codeの中のターミナルや、ほかのターミナルのアプリで化けるときは、中で動いているPowerShellやコマンドプロンプトの文字コードを、上の方法でそろえてください。
確認した資料
- Windows Insider Blog「Announcing Windows 10 Insider Preview Build 18298」(2018年12月10日)
- Microsoft Learn「chcp」
- Microsoft Learn「コード ページ識別子」
- Microsoft Learn「about_Character_Encoding」(PowerShell 7.5)
- Visual Studio Code「Basic Editing」(2026年10月21日)
- WHATWG HTML「4.2.5.4 Specifying the document's character encoding」(2026年10月22日更新)
- Google Merchant Center ヘルプ「文字化けに対応するためのエンコード設定」
確認日 2026-10-24。文字コードの変換は WHATWG Encoding Standard の表(index ファイル、2024年9月18日版)をそのまま使っています(ライセンス文)。