Функция hex.EncodeToString

Функция hex.EncodeToString из пакета encoding/hex преобразует переданный срез байтов в строку, состоящую из шестнадцатеричных символов. Каждый байт представлен двумя символами (от 0 до f). Первым параметром функция принимает срез байтов, который необходимо закодировать. Функция возвращает строку с шестнадцатеричным представлением исходных данных.

Синтаксис

gohex.EncodeToString(src)

Пример

Давайте закодируем срез байтов []byte{1, 2, 3, 4, 5} в шестнадцатеричную строку:

gopackage main

import (
  "encoding/hex"
  "fmt"
)

func main() {
  data := []byte{1, 2, 3, 4, 5}
  res := hex.EncodeToString(data)
  fmt.Println(res)
}

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

go"0102030405"

Пример

Давайте закодируем строку "abcde", предварительно преобразовав ее в срез байтов:

gopackage main

import (
  "encoding/hex"
  "fmt"
)

func main() {
  str := "abcde"
  data := []byte(str)
  res := hex.EncodeToString(data)
  fmt.Println(res)
}

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

go"6162636465"

Пример

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

gopackage main

import (
  "encoding/hex"
  "fmt"
)

func main() {
  data := []byte{}
  res := hex.EncodeToString(data)
  fmt.Println(res)
}

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

go""

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

  • функцию hex.DecodeString,
    которая выполняет декодирование строки в срез байтов
  • функцию hex.Encode,
    которая кодирует байты в шестнадцатеричный формат с записью в буфер
  • функцию hex.Decode,
    которая декодирует шестнадцатеричные данные из среза в срез байтов
  • функцию hex.Dump,
    которая возвращает шестнадцатеричное представление данных с форматированием