戻せる文字化けと、戻せない文字化け
化けた文字列を貼り付けると、復元できた文字列をコピーできる形で返します。あわせて、どの型の化け方だったか、戻せない型ならその理由を表示します。
文字化け
- 化けていた型
- UTF-8 のバイト列が Windows-1252 として読まれた(見えない制御文字が 1 つ欠けていたのを補いました)
- 直せない型
- Shift_JIS へ再エンコードが要る化け方は、ブラウザでは戻せません
戻せるのは、UTF-8 を 1 バイト文字として読まれた型
文字化けの多くは、UTF-8 で書かれたバイト列を、受け取った側が 1 バイト文字集合として一文字ずつ読んでしまったことで起きます。この型であれば、画面に出ている文字をいったんバイト列へ戻し、UTF-8 として読み直すことで元の文字列に戻ります。読み違えた側の文字集合が latin1 か Windows-1252 かで逆引き表が変わるため、両方を試して日本語らしさが高いほうを結果に採ります。
Windows-1252 は 0x80 から 0x9F の範囲を活字記号に割り当てているので、latin1 とは別の表が必要になります。同じ文字列でも、この二つでは復元結果が食い違うことがあります。
- 表示されている文字をバイト列に戻す
- latin1 の対応表で読み直す
- Windows-1252 の対応表で読み直す
- 日本語らしさが高いほうを結果として採る
Shift_JIS へ戻す必要がある型は扱えない
復元に Shift_JIS への再エンコードが要る型は、このツールでは戻せません。ブラウザの TextEncoder が出力できるのは UTF-8 だけで、これは実装を省いた結果ではなく仕組み上の制約です。そのため、それらしい文字列を無理に組み立てることはせず、どの型に当たったかを表示して止まります。
1 バイト欠けた文字列の扱い
コピーの過程で、見えない制御文字が落ちてバイトが 1 つ足りなくなることがあります。この状態では読み直しが途中で失敗するため、欠けたバイトを補う試行を一度だけ行います。それでも戻らない場合は、貼り付け元の経路を変えて元データを取り直したほうが早く済みます。
よくある質問
どんな化け方なら戻せますか
UTF-8 のバイト列が 1 バイト文字集合として読まれてしまった型です。画面に出ている文字をバイト列へ戻し、UTF-8 として読み直すことで元の文字列に戻ります。
「戻せない型」と表示されたのはなぜですか
復元に Shift_JIS への再エンコードが必要な型だったためです。ブラウザの TextEncoder は UTF-8 しか出力できないので、この型はブラウザの中では処理できません。
一部の文字だけ直りません
コピーの途中で見えない制御文字が落ち、バイトが 1 つ欠けている可能性があります。欠けたバイトを補う試行は一度だけ行うため、それでも直らない場合は元データを別の経路で取り直すのが確実です。
latin1 と Windows-1252 のどちらで戻ったか分かりますか
どちらの表で読み直した結果を採用したかは、復元後の文字列の下に型として表示されます。
ほかの変換ツール
最終更新:2026-09-05。次のようにも検索されます:文字化け 直す、文字化け 復元 ツール、utf-8 文字化け 戻す、化けた文字 元に戻す。