Quick actions

cmd+k|ctrl+k

Navigation

Languages

Essential Go / hex, base64 encoding

Snippet info

Language

Go

Visibility

public

Author

kkowalczyk

Created

2019-03-26T10:02:04Z

Updated

2019-03-26T10:02:04Z

package main

import (
	"bytes"
	"fmt"
	"log"
)

func main() {
	d := []byte{0x01, 0xff, 0x3a, 0xcd}
	s := fmt.Sprintf("%x", d)
	fmt.Printf("Hex: %s\n", s)

	var decoded []byte
	_, err := fmt.Sscanf(s, "%x", &decoded)
	if err != nil {
		log.Fatalf("fmt.Sscanf() failed with '%s'\n", err)
	}
	if !bytes.Equal(d, decoded) {
		log.Fatalf("decoded version is different than original")
	}

	n := 3824
	fmt.Printf("%d in hex is 0x%x\n", n, n)
}
INFO