Base64 変換
テキストをBase64に、Base64をテキストに変換します。UTF-8で処理するので日本語もそのまま往復——変換のたびに自分で戻して元と一致するか確かめ、結果を画面に出します。URLセーフ表記(- _)やパディングなし、76文字ごとに改行されたBase64もそのまま読めます。処理はすべてこの端末のブラウザ内——入力した内容はどこにもアップロードされません。
よくある質問
ファイルはどこかに送られますか?
送られません。変換はすべてブラウザの中だけで行われます。サーバーとの通信はログイン状態の確認・匿名の利用計測・エラー報告のみで、入力したテキストやBase64の中身が端末の外に出ることはありません。
日本語をBase64にすると文字化けしませんか?
しません。ブラウザの btoa() は1文字=1バイトの文字しか受け取らないため、日本語をそのまま渡すとエラーで止まります。このツールはいったんUTF-8のバイト列に変換してからBase64にし、戻すときもUTF-8として読み直しているので、漢字・かな・絵文字も元どおりに往復します。エンコードのたびに自動で復元して元の文章と照合し、「往復チェック: 一致」として画面に出しています。
URLセーフのBase64にもできますか?
できます。「URLセーフ」を入れると + と / を - と _ に置き換え、末尾の = を付けずに出力します(JWTやURLのパラメータで使われる形式)。デコード側は設定不要で、通常表記・URLセーフ表記・パディングの有無・改行入りのどれでも自動で判別して読み取ります。
画像やPDFをBase64にできますか?
できません。このツールが扱えるのはテキストだけで、ファイルを読み込む機能はありません。逆に、画像などのバイナリのBase64を貼り付けてデコードした場合は、無理に文字として表示せず「UTF-8のテキストではありません」と表示します。data:image/png;base64, のような接頭辞が付いていても本体だけを読み取ります。
「Base64では使えない文字が含まれています」と出るのはなぜですか?
貼り付けた文字列にBase64で使えない文字が混ざっているためです。コピーの範囲に余分な文字が入った、途中で改行されて後半が欠けた、2つのBase64がつながって「=」が途中に入った、といったときに起こります。どの原因に当たるかを分けて表示するので、その箇所を直してから貼り直してください(改行・スペースは自動で無視するので、そのまま貼って構いません)。