ファイルを選択
  1. base64hub
  2. テキストツール
  3. Base64 → ASCII

Base64 を ASCII に変換:純粋な ASCII テキストにデコード

Base64 を貼り付けて、厳密に ASCII として読みます。0~127 のバイトは通常どおりデコードされ、それより大きいバイトは � になるので、ペイロードが純粋な ASCII かどうかをすぐ確認できます。

無料 登録不要・制限なし ローカル アップロードなし 更新日 2026/10/27
入力 0 B出力 0 Bサイズ –

ブラウザ内で処理されます。このページがデータをどこかに送信することはできません – その根拠

Base64 を ASCII にデコードする方法

  1. 入力 · Base64 に Base64 を貼り付けます。文字コード はあらかじめ ASCII に設定されています。
  2. 出力 · テキスト でテキストを読みます。127 を超えるバイトはすべて � で表示されます。
  3. � が表示されたら、内容は純粋な ASCII ではありません。文字コード を UTF-8 か Windows-1252 に切り替えて読んでください。
  4. 出力をコピー するか、デコードしたバイト列を ダウンロード します。

逆にプレーンテキストをエンコードするには、ASCII を Base64 に変換 を使ってください。

厳密な ASCII デコード

多くのツールは 127 を超えるバイトを何らかの 8 ビット文字コードとして読むため、非 ASCII のバイトがもっともらしい文字に化けて、誰も気づきません。このページでは ASCII は 127 までで、128~255 のバイトはすべて置換文字で表示します。� の数がそのまま非 ASCII バイトの数です。

そのため、ASCII しか受け付けないシステムにデコードしたデータを渡す前の簡単なチェックに使えます。UTF-8 のアクセント付き文字は 2 バイトなので �� と表示され、カーリークォートは 3 バイトなので ��� になります。

例

Base64バイト(16進数)ASCII として
QVNDSUk=41 53 43 49 49ASCII
MjAwIE9L32 30 30 20 4F 4B200 OK
YQli61 09 62a、タブ、b
Y2Fmw6k=63 61 66 C3 A9caf��(UTF-8 の café)
4oCcaGnigJ0=E2 80 9C 68 69 E2 80 9D���hi���(UTF-8 の “hi”)

最後の 2 行は、文字コード を UTF-8 にすると正しくデコードされます。ステータス行の 推定形式 は ASCII モードでも形式を表示するので、PNG や PDF も判別されます。UTF-8 に戻すと、対応するファイル用デコーダーへのリンクが表示されます。

Base64 にした ASCII の見分け方

ASCII テキストの Base64 には見分けやすい形があります。どのバイトも 80 未満なので、4 文字グループの先頭の文字は必ず A~f の範囲に入り、g~z、数字、+、/ にはなりません。ただし文字の位置は 1 対 1 には対応しません。ASCII の 3 文字は必ず Base64 の 4 文字になり、4 文字の境界から始まらない部分文字列はデコードできません。

各文字のコードが知りたい場合も、バイト値はすぐに得られます。QVNDSUk= は 10進数で 65 83 67 73 73 です。Base64 を 10進数に変換 と Base64 を Hex に変換 でバイト値を一覧でき、Base64 を 2進数に変換 ではビットを表示できます。

コードで Base64 を ASCII に変換する

import base64

base64.b64decode("QVNDSUk=").decode("ascii")    # 'ASCII'
base64.b64decode("Y2Fmw6k=").decode("ascii")
# UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 3
list(base64.b64decode("QVNDSUk="))              # [65, 83, 67, 73, 73]

JavaScript には落とし穴があります。WHATWG Encoding Standard では new TextDecoder("ascii") は Windows-1252 の別名なので、Y2Fm6Q== を café とデコードし、非 ASCII のバイトを報告することはありません。代わりに bytes.every(b => b < 128) などで自分でバイト列を確認してください。詳しくは JavaScript での Base64 と Python での Base64 を参照してください。

よくある質問

Base64 を ASCII テキストに変換するには?

上に Base64 を貼り付けてください。デコードした 0~127 のバイトが、それぞれ ASCII 文字として表示されます。Python では base64.b64decode(s).decode("ascii") で同じことができ、127 を超えるバイトがあるとエラーになります。

出力に � が表示されるのはなぜですか?

そのバイトが ASCII ではないからです。たいていはアクセント付きの文字、カーリークォート、絵文字を含む UTF-8 のテキストなので、文字コードを UTF-8 に切り替えると読めます。出力のほとんどが � なら、データはおそらくファイルです。

ASCII コードを数値で見るには?

65 83 67 73 73 のようなバイト値なら Base64 を 10進数に変換、41 53 43 49 49 の形なら Base64 を Hex に変換 を使ってください。

ASCII テキストに見えない文字が含まれることはありますか?

あります。タブ、キャリッジリターン、ラインフィードなど、0~31 の制御コードも ASCII です。これらは通常どおりデコードされるので、単語の間のタブはタブのまま残ります。