Golang : Convert(cast) string to uint8 type and back to string
Problem :
You have a variable of type string and you want to convert/type cast it to uint8 type.
Solution :
If you plan to convert a single character, then type cast it with uint8()
function. If the string is couple of characters, use []uint8()
instead.
For example :
package main
import (
"fmt"
"reflect"
)
var str string = "this is a string"
func main() {
fmt.Printf("The value of test is %s \n", str)
fmt.Printf("The type of test is %v \n", reflect.TypeOf(str))
newStr := []uint8(str)
fmt.Printf("The value of newStr is %s \n", newStr)
fmt.Printf("The type of newStr is %v \n", reflect.TypeOf(newStr))
// convert back to string
backToStr := string([]byte(newStr[:]))
fmt.Println(backToStr)
fmt.Printf("The value of backToStr is [%s] \n", backToStr)
fmt.Printf("The type of backToStr is %v \n", reflect.TypeOf(backToStr))
}
Output :
The value of test is this is a string
The type of test is string
The value of newStr is this is a string
The type of newStr is []uint8
this is a string
The value of backToStr is [this is a string]
The type of backToStr is string
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+43.3k Golang : Convert []byte to image
+28.6k Get file path of temporary file in Go
+7.5k Golang : Detect sample rate, channels or latency with PortAudio
+27.5k Golang : Convert integer to binary, octal, hexadecimal and back to integer
+22.2k Golang : Print leading(padding) zero or spaces in fmt.Printf?
+10.4k Golang : cannot assign type int to value (type uint8) in range error
+21.2k Golang : Get password from console input without echo or masked
+30.5k Get client IP Address in Go
+16.9k Golang : Get the IPv4 and IPv6 addresses for a specific network interface
+14.2k Golang : Chunk split or divide a string into smaller chunk example
+9.8k Golang : Get current, epoch time and display by year, month and day
+18.2k Golang : Put UTF8 text on OpenCV video capture image frame