企评社

表示ラベルは日本語です。企業口コミ・投稿・ツールの説明は現在中国語のみです。

ファイルを Base64 に

ファイル → Base64 / data URI · Base64 → ファイル復元 · 画像は自動プレビュー

全部在浏览器本地读取与编码,文件不上传、刷新即清空
把文件拖到这里,或点击选择(可多选)
任意类型;只读字节并在本机编码,不上传服务器;单文件 ≤ 20MB

Base64 是怎么膨胀三分之一的

Base64 把每 3 个字节(24 位)切成 4 个 6 位,每个 6 位查表落成一个可打印字符(A–Z、a–z、0–9、+、/),于是二进制变成能塞进 JSON、XML、邮件与 HTML 属性的纯文本。字节数不是 3 的倍数时用 = 补位:余 1 字节补 ==、余 2 字节补 =。所以编码后长度恒为 4 × ⌈字节数 ÷ 3⌉——本页显示的膨胀率是实测字符数 ÷ 原始字节数,并与这个理论值逐字节核对,对不上会明确标出来。

Base64 不是加密,也不是压缩。它只是换字母表:任何人拿到都能一步还原,体积还涨约 1/3。敏感内容请用真正的加密(AES 等),需要变小请用压缩——两件事都不是本页在做的。

data URI 是「前缀 + Base64」。形如 data:image/png;base64,iVBOR…:data: 后面是 MIME 与可选参数(如 ;charset=utf-8),;base64 声明编码方式,逗号之后才是内容。把图片直接写进 HTML 的 src、把字体写进 CSS 用的就是它——代价是体积膨胀且无法被单独缓存。

大文件为什么分块读。编码按约 1MB 一块顺序读取,块长取 3 的整数倍(这样每块都能独立编码、直接拼接,不会在块边界多出补位符),每块编码完立即释放字节。结果是内存里只多出 Base64 文本本身;但文本仍要完整放进页面(约 1.33 倍),所以超过 20MB 请改用命令行工具。

よくある質問

ファイルはアップロードされる?Base64 は暗号代わりにできる?

されません。読み取り・エンコード・デコードすべてブラウザ内で完結——ファイルは 1 バイトも端末の外に出ず、ページ更新で消え、localStorage にも書きません。ただし Base64 はエンコードであって暗号ではありません:バイナリを JSON・メール・HTML に載せやすい平文に置き換えるだけで、手にした誰でも一発で元に戻せます。秘密保持には AES 等の本物の暗号ツールを。なお体積は約 3 分 1 膨らむので、転送の圧縮がわりにするのはやめてください。

大きいファイルもいける?超過案内が出るのはなぜ?

1 ファイル 20MB 上限です。エンコードは約 1MB ずつ分割読み込みし各ブロック完了 즉시 解放するため、ファイルをメモリ上で何重にもコピーはしませんが、Base64 テキスト自体は完全な形でページに載せる必要があり(約 1.33 倍)ブラウザのメモリ制限もあり——それ以上はコマンドラインへ:Linux・macOS なら base64 ファイル > 出力.txt、Windows PowerShell ならファイルバイト列に対する Convert の一行呼び出し。複数選択時は 1 ファイルずつ処理し、一覧に行単位で状態を表示します。

デコードするとどんなファイルになる?拡張名が推測なのはなぜ?

三つの根拠を優先度順に判定します:①data URI 内の MIME(data:image/png;base64,… は型がそのまま書いてある);②先頭バイナリ署名(PNG は 89 50 4E 47、JPEG は FF D8 FF、PDF は %PDF、ZIP は PK 始まり);③本文がテキストに見えるなら .txt 扱い。三つとも判定不能なら一律 .bin とし「内容から型を推測できない」と明記します。拡張子はダウンロード名の提案にすぎずバイト内容は変えず、正しい拡張子に変えれば普通に開けます。

「エンコード変換」ページの Base64 とはどう違う?どっちを使うべき?

「エンコード変換」ページはテキスト小片向け(貼った文字を Base64 に、URL-safe 変種、補位除去)と単一ファイルの高速コピー向け;本ページはファイル向け——複数一括選択・大容量の分割読み込み・生体積と膨張率・プレーン Base64 と data URI の二形態、さらに Base64 からファイルへの逆復元(型識別と画像プレビュー付き)。文章一片の変換ならエンコード変換へ、ファイル——特に数十 KB 以上の画像・PDF・圧縮ファイル——の処理なら本ページへ。

関連ツール