수색…


통사론

  • func (enc * base64.Encoding) Encode (dst, src [] 바이트)
  • func (enc * base64.Encoding) 디코드 (dst, src [] 바이트) (n int, err error)
  • func (enc * base64.Encoding) EncodeToString (src [] byte) string
  • func (enc * base64.Encoding) DecodeString (s 문자열) ([] 바이트, 오류)

비고

encoding/base64 패키지에는 몇 가지 기본 제공 인코더 가 포함되어 있습니다. 이 문서의 대부분의 예제는 base64.StdEncoding 을 사용하지만 임의의 인코더 ( URLEncoding , RawStdEncodign , 사용자 정의 인코더 등)를 대체 할 수 있습니다.

부호화

const foobar = `foo bar`
encoding := base64.StdEncoding
encodedFooBar := make([]byte, encoding.EncodedLen(len(foobar)))
encoding.Encode(encodedFooBar, []byte(foobar))
fmt.Printf("%s", encodedFooBar)
// Output: Zm9vIGJhcg==

운동장

String 에의 encode

str := base64.StdEncoding.EncodeToString([]byte(`foo bar`))
fmt.Println(str)
// Output: Zm9vIGJhcg==

운동장

디코딩

encoding := base64.StdEncoding
data := []byte(`Zm9vIGJhcg==`)
decoded := make([]byte, encoding.DecodedLen(len(data)))
n, err := encoding.Decode(decoded, data)
if err != nil {
    log.Fatal(err)
}

// Because we don't know the length of the data that is encoded
// (only the max length), we need to trim the buffer to whatever
// the actual length of the decoded data was.
decoded = decoded[:n]

fmt.Printf("`%s`", decoded)
// Output: `foo bar`

운동장

문자열 디코딩

decoded, err := base64.StdEncoding.DecodeString(`biws`)
if err != nil {
    log.Fatal(err)
}

fmt.Printf("%s", decoded)
// Output: n,,

운동장



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow