各编程语言中 Base64 编码解码的方法

1/19/2022 javajavascriptpythonlinux

各编程语言中 Base64 编码解码的方法 (其中 String str 表示原文本,String base64 表示编码结果)

语言 Base64 编码 Base64 解码
JavaScript base64 = btoa(str); // IE 10- 需要引入 base64.js 且不支持汉字

// 需要引入 CryptoJS
var s = CryptoJS.enc.Utf8.parse(str);
base64 = CryptoJS.enc.Base64.stringify(s);
str = atob(base64); // IE 10- 需要引入 base64.js 且不支持汉字

// 需要引入 CryptoJS
var s = CryptoJS.enc.Base64.parse(base64);
str = s.toString(CryptoJS.enc.Utf8);
Linux Shell
(以 test 为例)
// dGVzdAo=
$ echo test | base64
// test
$ echo dGVzdAo= | base64 -d
Java base64 = new BASE64Encoder()
.encode(str.getBytes());
str = new String(new BASE64Decoder()
.decodeBuffer(base64));
Python import base64
base64 = base64.b64encode(str)
import base64 str = base64.b64decode(base64)
PHP $base64 = base64_encode($str); $str = base64_decode($base64);
C#/.NET byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str);
base64 = System.Convert.ToBase64String(bytes);
byte[] bytes = System.Convert
.FromBase64String(base64);
str = System.Text.Encoding.UTF8
.GetString(bytes);
Perl use MIME::Base64; $base64 = encode_base64($str); use MIME::Base64; $str = decode_base64($base64);
Golang import b64 "encoding/base64"
...
base64 := b64.StdEncoding
.EncodeToString([]byte(str))
import b64 "encoding/base64"
...
str := b64.StdEncoding
.DecodeString(base64)
Ruby require "base64" base64 = Base64.encode64(str) require "base64" str = Base64.decode64(base64)
MySQL/MariaDB // 参数也可以是一个字段
SELECT TO_BASE64(str);
// 参数也可以是一个字段
SELECT FROM_BASE64(base64);
PostgreSQL SELECT encode(str, 'base64'); SELECT decode(base64, 'base64');
Last Updated: 12/26/2022, 11:54:10 AM