How to Convert String to Uint8 in Golang

To convert a string to uint8 in Golang, you can use the “strconv.ParseUint()” function.

The ParseUint() function accepts a string, base (e.g., 10 for decimal, 16 for hexadecimal), and bit size (8 for uint8) and returns the corresponding uint64 value if the conversion is successful; otherwise, an error.

package main

import (
  "fmt"
  "log"
  "strconv"
)

func main() {
  str := "42"

  uint64Value, err := strconv.ParseUint(str, 10, 8)
  if err != nil {
    log.Fatal(err)
  }

  uint8Value := uint8(uint64Value)

  fmt.Println("String as uint8:", uint8Value)
}

Output

String as uint8: 42

The above code has a string “str” containing “42”.

To convert the string to a uint8, we used the “strconv.ParseUint()” function to parse the string into a uint64 value.

If there is an error during the conversion process (e.g., if the string is not a valid integer representation or the parsed value is out of range for the specified bit size), the program will log the error and exit.

Next, we cast the uint64 value to a uint8.

Finally, we printed the resulting uint8 value to the console.