github.com/bytom/bytom@v1.1.2-0.20221014091027-bbcba3df6075/encoding/base32/example_test.go (about)

     1  // Copyright 2012 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Keep in sync with ../base64/example_test.go.
     6  
     7  package base32_test
     8  
     9  import (
    10  	"encoding/base32"
    11  	"fmt"
    12  	"os"
    13  )
    14  
    15  func ExampleEncoding_EncodeToString() {
    16  	data := []byte("any + old & data")
    17  	str := base32.StdEncoding.EncodeToString(data)
    18  	fmt.Println(str)
    19  	// Output:
    20  	// MFXHSIBLEBXWYZBAEYQGIYLUME======
    21  }
    22  
    23  func ExampleEncoding_DecodeString() {
    24  	str := "ONXW2ZJAMRQXIYJAO5UXI2BAAAQGC3TEEDX3XPY="
    25  	data, err := base32.StdEncoding.DecodeString(str)
    26  	if err != nil {
    27  		fmt.Println("error:", err)
    28  		return
    29  	}
    30  	fmt.Printf("%q\n", data)
    31  	// Output:
    32  	// "some data with \x00 and \ufeff"
    33  }
    34  
    35  func ExampleNewEncoder() {
    36  	input := []byte("foo\x00bar")
    37  	encoder := base32.NewEncoder(base32.StdEncoding, os.Stdout)
    38  	encoder.Write(input)
    39  	// Must close the encoder when finished to flush any partial blocks.
    40  	// If you comment out the following line, the last partial block "r"
    41  	// won't be encoded.
    42  	encoder.Close()
    43  	// Output:
    44  	// MZXW6ADCMFZA====
    45  }