РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1171 of 1593 menu

Переменная base64.StdEncoding

Переменная base64.StdEncoding представляет стандартную кодировку Base64, определенную в RFC 4648. Она используется для кодирования бинарных данных в текстовый формат, состоящий из символов латинского алфавита, цифр и символов + и /. Кодировка Base64 часто применяется для передачи данных в JSON, XML, HTTP-заголовках и других текстовых протоколах.

Синтаксис

base64.StdEncoding.EncodeToString(data []byte) string base64.StdEncoding.DecodeString(s string) ([]byte, error) base64.StdEncoding.Encode(dst, src []byte) base64.StdEncoding.Decode(dst, src []byte) (int, error)

Пример кодирования в строку

Давайте закодируем строку "Hello, World!" в формат Base64:

package main import ( "encoding/base64" "fmt" ) func main() { data := []byte("Hello, World!") res := base64.StdEncoding.EncodeToString(data) fmt.Println(res) }

Результат выполнения кода:

"SGVsbG8sIFdvcmxkIQ=="

Пример декодирования из строки

Декодируем Base64-строку обратно в исходные данные:

package main import ( "encoding/base64" "fmt" ) func main() { s := "SGVsbG8sIFdvcmxkIQ==" data, err := base64.StdEncoding.DecodeString(s) if err != nil { fmt.Println("Error:", err) } else { fmt.Println(string(data)) } }

Результат выполнения кода:

"Hello, World!"

Пример кодирования в буфер

Запишем закодированные данные в предварительно выделенный буфер:

package main import ( "encoding/base64" "fmt" ) func main() { data := []byte("Hello, World!") dst := make([]byte, base64.StdEncoding.EncodedLen(len(data))) base64.StdEncoding.Encode(dst, data) fmt.Println(string(dst)) }

Результат выполнения кода:

"SGVsbG8sIFdvcmxkIQ=="

Пример декодирования из буфера

Декодируем данные из закодированного буфера обратно:

package main import ( "encoding/base64" "fmt" ) func main() { s := "SGVsbG8sIFdvcmxkIQ==" src := []byte(s) dst := make([]byte, base64.StdEncoding.DecodedLen(len(src))) n, err := base64.StdEncoding.Decode(dst, src) if err != nil { fmt.Println("Error:", err) } else { fmt.Println(string(dst[:n])) } }

Результат выполнения кода:

"Hello, World!"

Смотрите также

  • переменную base64.URLEncoding,
    которая использует безопасный для URL вариант кодировки
  • переменную base64.RawStdEncoding,
    которая кодирует без символов заполнения
  • функцию base64.NewEncoder,
    которая создает потоковый кодировщик
  • функцию base64.NewDecoder,
    которая создает потоковый декодер
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить