Base64.proBase64 在线编码解码(最好用的 Base64 在线编码解码工具)

请输入要进行 Base64 编码或解码的字符
(编码快捷键:Ctrl + Enter )
Base64 编码或解码的结果:
请在上方第一个文本框中输入要编码/解码的字符。
也可以选择图片文件来获取它的 Base64 编码的 DataURI 形式:

索引 二进制 字符 索引 二进制 字符 索引 二进制 字符 索引 二进制 字符
0 000000 A 16 010000 Q 32 100000 g 48 110000 w
1 000001 B 17 010001 R 33 100001 h 49 110001 x
2 000010 C 18 010010 S 34 100010 i 50 110010 y
3 000011 D 19 010011 T 35 100011 j 51 110011 z
4 000100 E 20 010100 U 36 100100 k 52 110100 0
5 000101 F 21 010101 V 37 100101 l 53 110101 1
6 000110 G 22 010110 W 38 100110 m 54 110110 2
7 000111 H 23 010111 X 39 100111 n 55 110111 3
8 001000 I 24 011000 Y 40 101000 o 56 111000 4
9 001001 J 25 011001 Z 41 101001 p 57 111001 5
10 001010 K 26 011010 a 42 101010 q 58 111010 6
11 001011 L 27 011011 b 43 101011 r 59 111011 7
12 001100 M 28 011100 c 44 101100 s 60 111100 8
13 001101 N 29 011101 d 45 101101 t 61 111101 9
14 001110 O 30 011110 e 46 101110 u 62 111110 +
15 001111 P 31 011111 f 47 101111 v 63 111111 /
Padding =

在编程语言中实现Base64编码解码 base64加密解密

使用Java进行Base64编码解码/Base64加密解密


//如果使用jdk8
import java.util.Base64;
byte[] encodedBytes = Base64.getEncoder().encode("It's lunch time".getBytes());
System.out.println("encodedBytes " + new String(encodedBytes));
byte[] decodedBytes = Base64.getDecoder().decode(encodedBytes);
System.out.println("decodedBytes " + new String(decodedBytes));

//或者使用apache commons code包
import org.apache.commons.codec.binary.Base64;
byte[] encodedBytes = Base64.encodeBase64("It's lunch time".getBytes());
System.out.println("encodedBytes " + new String(encodedBytes));
byte[] decodedBytes = Base64.decodeBase64(encodedBytes);
System.out.println("decodedBytes " + new String(decodedBytes));

使用JavaScript进行Base64编码解码/Base64加密解密


//encode base64
var str = "QXdlc29tZSBCYXNlNjRDb2Rl";
var decodedData = window.atob(str); // decode the string
console.log(decodedData);

//deocde base64
var str = "Awesome Base64Code";
var encodedData = window.btoa(str); // encode a string
console.log(encodedData);


使用Python进行Base64编码解码/Base64加密解密


import base64

#python2 base64 decode
s = 'SXQncyBsdW5jaCB0aW1l'
print base64.b64decode(s)

#python3 base64 decode
s = 'SXQncyBsdW5jaCB0aW1l'.encode()
print(base64.b64decode(s))

#python2 base64 encode
s = 'time for lunch'
print base64.b64encode(s)

#python3 base64 encode
s = 'time for lunch'.encode()
print(base64.b64encode(s))

使用C#进行Base64编码解码/Base64加密解密


using System;
using System.Text;

string strB64Encoded = "SXQncyBsdW5jaCB0aW1l";
byte[] data = Convert.FromBase64String(strB64Encoded);
string strB64Decoded = UTF8Encoding.GetString(data);
Console.WriteLine(strB64Decoded);

string strB64Decoded = "It's lunch time";
byte[] data = UTF8Encoding.GetBytes(strB64Decoded);
string strB64Encoded = Convert.ToBase64String(data);
Console.WriteLine(strB64Encoded);

使用Golang进行Base64编码解码/Base64加密解密


import (
    "encoding/base64"
    "fmt"
)

#decode base64 in golang
data := "YmFzZTY0IGVuY29kZWQgc3RyaW5n"
sDec := base64.StdEncoding.DecodeString(data)
fmt.Println(sDec)

#encode base64 in golang
data := "base64 encoded string"
sEnc := base64.StdEncoding.EncodeToString([]byte(data))
fmt.Println(sEnc)

使用Ruby进行Base64编码解码/Base64加密解密


re "base64"
To decode, you need to use Base64.decode64 2:

s = 'SXQncyBsdW5jaCB0aW1l'
s_decoded = Base64.decode64(s)
puts s_decoded
To encode, you need to use Base64.encode64:

s = 'time for lunch'
s_encoded = Base64.encode64(s)
puts s_encoded

使用Linux/Shell进行Base64编码解码/Base64加密解密


// base64 encode in linux/shell
echo test|base 64

// base64 decode in linux/shell
echo dGVzdAo= | base64 -d

Base64算法原理

Base64是一种基于64个可打印字符来表示二进制数据的表示方法。由于2的6次方等于64,所以每6个位元为一个单元,对应某个可打印字符。三个字节有24个位元,对应于4个Base64单元,即3个字节需要用4个可打印字符来表示。它可用来作为电子邮件的传输编码。在Base64中的可打印字符包括字母A-Z、a-z、数字0-9 ,这样共有62个字符,此外两个可打印符号在不同的系统中而不同。一些如uuencode的其他编码方法,和之后binhex的版本使用不同的64字符集来代表6个二进制数字,但是它们不叫Base64

/>