直接の回答
Base64 & URLツールは、RFC 4648およびRFC 3986に準拠し、UTF-8バイト列を正確に処理して文字列やバイナリ画像とASCIIテキスト表現との相互変換を実行します。
このツールの使い方
操作モードを選択する
「Base64エンコード/デコード」「URLエンコード/デコード」「画像 → Data URI」から選択します。
テキストまたは画像を入力する
変換したいテキストを入力するか、ローカルの画像ファイルをドロップします。
変換結果を確認してコピーする
生成されたエンコード文字列またはデコード結果をワンクリックでコピーします。
UTF-8バイト列のBase64マッピングとURLエスケープ規則
マルチバイト文字(日本語や絵文字)をUTF-8バイト列に変換した上で6ビットごとのBase64文字(A-Z, a-z, 0-9, +, /)にエンコードし、文字化けを確実に防止します。
- UTF-8の安全な処理:レガシーなbtoa/atobの制約を克服し、多言語テキストを文字化けなくエンコード・デコードします。
- URLセーフ形式:クエリパラメータ等で使用できるよう、+と/を-と_に置換するURL-Safe Base64にも対応しています。
具体例
日本語文字列のUTF-8安全なBase64エンコード
入力: 「こんにちは世界」
出力: 44GT44KT44Gr44Gh44Gv5LiW55WM
API通信や設定ファイルで日本語テキストを安全に転送するためのBase64文字列に変換します。
制限事項
- Base64エンコードを行うと、元のバイナリデータと比較してデータ量が約33%増加します。
- 巨大な画像ファイル(10MB以上)をData URI化すると、HTMLやCSSのファイルサイズが著しく増大するため注意が必要です。
よくある質問
日本語のテキストがBase64変換で文字化けしないのはなぜですか?
TextEncoderおよびTextDecoder APIを用いて、文字列を一度UTF-8のバイト配列に変換してからBase64処理を行っているため、文字化けが発生しません。
URLエンコードで予約文字はどう扱われますか?
RFC 3986に従い、URLの構文で特別な意味を持つ記号(&、?、=など)を %XX の16進パーセントエンコード形式に安全に変換します。
信頼できる参考文献・標準規格
- RFC 4648: The Base16, Base32, and Base64 Data Encodings ↗ — 標準Base64、URLセーフBase64、パディング規則に関するIETF公式標準。
- RFC 3986: Uniform Resource Identifier (URI) Generic Syntax ↗ — URI予約文字およびパーセントエンコーディング規則に関する公式規格。