# How to Convert a Byte Array or Slice to a String
# Convert string to bytes in Go
🗓 August 10, 2018 | 👱 By: Hugh
Sometimes a method will take a []byte
as a parameter, but all you have is a string
. Converting between a string
and a []byte
is actually just a matter of casting between them:
bytes := []byte(str)
or
str := string(bytes)
A longer example:
package main
import "fmt"
func giveMeBytes(bytes []byte) {
// Print as bytes.
fmt.Println(bytes)
// Convert to a string and print.
fmt.Println(string(bytes))
}
func main() {
str := "Hello, world!"
giveMeBytes([]byte(str))
}
Output:
[72 101 108 108 111 44 32 119 111 114 108 100 33]
Hello, world!
As useless as this program is, it shows a method that requires a slice of bytes, and how to pass a string into it using a cast (line 15). Within that method, the bytes are printed as a slice of bytes first, then as a string in the original form by casting it to a string in line 9.
# Conclusion
Cast your net far and wide and you will catch more fish.