encoding/base64: add examples for Encode/Decode

Fixes #37595

Change-Id: I83e5f6105748a0a9238322a4f7ec4b0bbf61a263
Reviewed-on: https://go-review.googlesource.com/c/go/+/348394
Reviewed-by: Daniel Martí <mvdan@mvdan.cc>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Trust: Daniel Martí <mvdan@mvdan.cc>
Trust: Cherry Mui <cherryyz@google.com>
This commit is contained in:
180909 2021-09-09 00:32:03 +08:00 committed by Daniel Martí
parent ee92daae25
commit 1e49210ccd
1 changed files with 23 additions and 0 deletions

View File

@ -35,6 +35,15 @@ func ExampleEncoding_EncodeToString() {
// YW55ICsgb2xkICYgZGF0YQ==
}
func ExampleEncoding_Encode() {
data := []byte("Hello, world!")
dst := make([]byte, base64.StdEncoding.EncodedLen(len(data)))
base64.StdEncoding.Encode(dst, data)
fmt.Println(string(dst))
// Output:
// SGVsbG8sIHdvcmxkIQ==
}
func ExampleEncoding_DecodeString() {
str := "c29tZSBkYXRhIHdpdGggACBhbmQg77u/"
data, err := base64.StdEncoding.DecodeString(str)
@ -47,6 +56,20 @@ func ExampleEncoding_DecodeString() {
// "some data with \x00 and \ufeff"
}
func ExampleEncoding_Decode() {
str := "SGVsbG8sIHdvcmxkIQ=="
dst := make([]byte, base64.StdEncoding.DecodedLen(len(str)))
n, err := base64.StdEncoding.Decode(dst, []byte(str))
if err != nil {
fmt.Println("decode error:", err)
return
}
dst = dst[:n]
fmt.Printf("%q\n", dst)
// Output:
// "Hello, world!"
}
func ExampleNewEncoder() {
input := []byte("foo\x00bar")
encoder := base64.NewEncoder(base64.StdEncoding, os.Stdout)