📅  最后修改于: 2023-12-03 15:31:01.221000             🧑  作者: Mango
在 Golang 中,base64 包提供了对数据进行 base64 编码和解码的函数。base64 是一种将二进制数据转换为 ASCII 字符的编码方式,通常用于在网络上传输二进制数据或存储数据。
下面是 base64 包中常用的函数:
EncodeToString
函数将二进制数据编码为 base64 字符串。
func EncodeToString(src []byte) string
示例代码:
package main
import (
"encoding/base64"
"fmt"
)
func main() {
data := []byte("hello world")
str := base64.StdEncoding.EncodeToString(data)
fmt.Println(str)
}
输出:
aGVsbG8gd29ybGQ=
DecodeString
函数将 base64 字符串解码为二进制数据。
func DecodeString(s string) ([]byte, error)
示例代码:
package main
import (
"encoding/base64"
"fmt"
)
func main() {
str := "aGVsbG8gd29ybGQ="
data, err := base64.StdEncoding.DecodeString(str)
if err != nil {
panic(err)
}
fmt.Println(string(data))
}
输出:
hello world
StdEncoding
是标准的 base64 编码。
var StdEncoding *Encoding = NewEncoding(encodeStd)
示例代码:
package main
import (
"encoding/base64"
"fmt"
)
func main() {
data := []byte("hello world")
str := base64.StdEncoding.EncodeToString(data)
fmt.Println(str)
}
输出:
aGVsbG8gd29ybGQ=
URLEncoding
是 URL 安全的 base64 编码,将 +
和 /
分别替换为 -
和 _
。
var URLEncoding *Encoding = NewEncoding(encodeURL)
示例代码:
package main
import (
"encoding/base64"
"fmt"
)
func main() {
data := []byte("hello world")
str := base64.URLEncoding.EncodeToString(data)
fmt.Println(str)
}
输出:
aGVsbG8gd29ybGQ=
以上就是 Golang 中的 base64 包介绍,希望对你有所帮助。