github.com/Bytom/bytom@v1.1.2-0.20210127130405-ae40204c0b09/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 }