2024-07-30 00:28:04 +08:00
|
|
|
package main
|
|
|
|
|
|
|
|
|
|
import (
|
2024-07-30 00:30:58 +08:00
|
|
|
"encoding/base32"
|
2024-07-30 00:28:04 +08:00
|
|
|
"encoding/base64"
|
|
|
|
|
"fmt"
|
|
|
|
|
)
|
|
|
|
|
|
2024-07-30 00:30:58 +08:00
|
|
|
func base64Demo() {
|
2024-07-30 00:28:04 +08:00
|
|
|
msg := "Hello, 世界"
|
|
|
|
|
encoded := base64.StdEncoding.EncodeToString([]byte(msg))
|
|
|
|
|
fmt.Println(encoded)
|
|
|
|
|
decoded, err := base64.StdEncoding.DecodeString(encoded)
|
|
|
|
|
if err != nil {
|
|
|
|
|
fmt.Println("decode error:", err)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
fmt.Println(string(decoded))
|
|
|
|
|
}
|
2024-07-30 00:30:58 +08:00
|
|
|
|
|
|
|
|
func base32Demo() {
|
|
|
|
|
str := "JBSWY3DPFQQHO33SNRSCC==="
|
|
|
|
|
dst := make([]byte, base32.StdEncoding.DecodedLen(len(str)))
|
|
|
|
|
n, err := base32.StdEncoding.Decode(dst, []byte(str))
|
|
|
|
|
if err != nil {
|
|
|
|
|
fmt.Println("decode error:", err)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
dst = dst[:n]
|
|
|
|
|
fmt.Printf("%q\n", dst)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
|
base64Demo()
|
|
|
|
|
base32Demo()
|
|
|
|
|
}
|