本文主要是介绍encoding/base64,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
base64实现了RFC 4648规定的base64编码
RFC 4648标准化了两种字符集。默认字符集用于MIME(RFC 2045)和PEM(RFC 1421)编码,RFC 4648定义的另一base64编码字符集,用于URL和文件名用'-'和'_'替换了'+'和'/'
对字符进行编解码
var StdEncoding = NewEncoding(encodeStd)
const encodeStd = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
package mainimport ("fmt""encoding/base64"
)func main() {str:= []byte("我爱你蓝天")// 编码base64Str:= base64.StdEncoding.EncodeToString(str)fmt.Println("base64编码字符串:" ,base64Str)//解码data,error := base64.StdEncoding.DecodeString(base64Str)if error != nil {fmt.Println(error)}fmt.Println("解码base64:",string(data))
}
对文件名或者url路径进行编码
const encodeURL = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"
package mainimport ("fmt""encoding/base64"
)func main() {str:= []byte("http://baidu.com")// 编码base64Str:= base64.URLEncoding.EncodeToString(str)fmt.Println("base64编码字符串:" ,base64Str)//解码data,error := base64.URLEncoding.DecodeString(base64Str)if error != nil {fmt.Println(error)}fmt.Println("解码base64:",string(data))
}
获取n个字节编码后的长度以及编码字符解码后的长度
fmt.Println(base64.StdEncoding.EncodedLen(64))fmt.Println(base64.StdEncoding.DecodedLen(88))
这篇关于encoding/base64的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!