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

Функция base64.NewDecoder

Функция base64.NewDecoder создает новый декодер Base64, который читает данные из указанного io.Reader и декодирует их в исходный бинарный формат. Первым параметром функция принимает кодировку Base64 (например, base64.StdEncoding или base64.URLEncoding), вторым параметром — источник закодированных данных, реализующий интерфейс io.Reader. Возвращаемое значение — это io.Reader, который при чтении выполняет декодирование "на лету".

Синтаксис

base64.NewDecoder(enc *base64.Encoding, r io.Reader) io.Reader

Пример

Давайте декодируем строку "SGVsbG8gV29ybGQ=" с использованием стандартной кодировки Base64:

package main import ( "encoding/base64" "fmt" "strings" ) func main() { encoded := "SGVsbG8gV29ybGQ=" decoder := base64.NewDecoder(base64.StdEncoding, strings.NewReader(encoded)) decoded, err := io.ReadAll(decoder) if err != nil { fmt.Println("Error:", err) return } fmt.Println(string(decoded)) }

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

"Hello World"

Пример

Декодирование данных из URL-безопасной кодировки Base64 с использованием base64.URLEncoding:

package main import ( "encoding/base64" "fmt" "strings" ) func main() { encoded := "SGVsbG8gV29ybGQh" decoder := base64.NewDecoder(base64.URLEncoding, strings.NewReader(encoded)) decoded, err := io.ReadAll(decoder) if err != nil { fmt.Println("Error:", err) return } fmt.Println(string(decoded)) }

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

"Hello World!"

Пример

Декодирование данных из строки без добавления символов заполнения с использованием base64.RawStdEncoding:

package main import ( "encoding/base64" "fmt" "strings" ) func main() { encoded := "SGVsbG8gV29ybGQ" decoder := base64.NewDecoder(base64.RawStdEncoding, strings.NewReader(encoded)) decoded, err := io.ReadAll(decoder) if err != nil { fmt.Println("Error:", err) return } fmt.Println(string(decoded)) }

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

"Hello World"

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

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