首页 Base64 转换

Base64 转换

hello 是 aGVsbG8=。换回来时会去掉空格和换行,URL 用的 - 和 _ 不会读取。文字留在这个浏览器里。

为什么做

邮件和 data URL 把同一段文字写成四个字符一组,例如 aGVsbG8=。

URL 的 %20 和 Base64 的 + 是两种规则。这一页只处理标准 Base64。

  1. 01怎么用

    编码放入文字,解码放入 Base64。示例会填上 hello 或 aGVsbG8=。

    复制结果只把结果框放进剪贴板。清空会把输入和结果都清掉。

    关掉标签后文字就消失。这一页不上传文件。

  2. 02结果示例

    hello、Hello 和 € 分别是 aGVsbG8=、SGVsbG8= 和 4oKs。同一组拉丁字母换了大小写,结果就会变。

    一个字母 M 是 TQ==,Ma 是 TWE=,Man 是 TWFu。

    输入hello

    hello aGVsbG8=
    Hello SGVsbG8=
    € 4oKs
    两个韩文字 7JWI64WV
  3. 03需要知道的事

    YQ 即使没有填充也会回到 a。只有一个 = 的 YQ= 会停住。

    /w== 是单字节 0xFF,不是 UTF-8 文字,所以解码会停住。

    字母表以外的字符、出现在中间的 =,或者长度除以 4 余 1,都是错误。

    这个转换不是密码。任何人都能用同一条规则换回去。

常见问题

Qhello 是什么?
A它是 aGVsbG8=。两个韩文字是 7JWI64WV。
Q可以有换行吗?
A可以。空格和换行会在读取前去掉。
Q- 和 _ 能读吗?
A不能。只读取标准字母表里的 + 和 /。
Q文字会保存吗?
A不会。文字只在这个浏览器里转换,不会送到服务器。

这一页怎样算出

这一页把 UTF-8 文字换成标准 Base64。字母表是 A–Z、a–z、0–9、+ 和 /。hello 是 aGVsbG8=,Hello 是 SGVsbG8=。两个韩文字是 7JWI64WV,€ 是 4oKs。URL 用的 - 和 _ 不会读取。

三个字节变成四个字符。一个字节以 == 结尾,两个字节以 = 结尾。M 是 TQ==,Ma 是 TWE=,Man 是 TWFu。缺的填充如果余数对得上就补上,= 的个数不对或者剩下的位不是 0 就停住。换回去时会去掉空格、制表符和换行,所以每 76 个字符折行的块也能读。编码结果不会折行。

解出来的字节如果不是 UTF-8,就显示错误而不是文字。单字节 0xFF 的 /w== 就是这种情况。这一页不开图片文件,这个转换也不是密码。超过 10 万个字符就停住。文字只在这个浏览器里转换,不会送到服务器。

  • # Base64
  • # UTF-8
  • # 编码
  • # 解码