Home  >  Article  >  Backend Development  >  How to convert bytes in golang

How to convert bytes in golang

PHPz
PHPzOriginal
2023-04-14 13:45:20682browse

Golang is a programming language widely used in back-end development. Its powerful concurrency features and efficient running speed are favored by developers. In golang, byte conversion is also a very common operation. This article will introduce you to the commonly used byte conversion methods in golang and how to use related functions.

1. Byte to String

In golang, the method of converting bytes to string is very simple. We only need to use the string() function to convert the byte slice into a string type. The following is a sample code:

package main

import (
    "fmt"
)

func main() {
    b := []byte{'H', 'e', 'l', 'l', 'o', ',', ' ', 'W', 'o', 'r', 'l', 'd', '!'}
    s := string(b)
    fmt.Println(s)
}

In the above code, we first define a byte slice b, which contains each byte of the string "Hello, World!". Next, we use s := string(b) to convert b to string type. Finally, use the fmt.Println() function to output s, and the complete string "Hello, World!" can be printed.

2. Convert string to byte

Converting string to byte slice is also very simple. We just need to use the []byte() function, which converts the string into a byte slice. The following is a sample code:

package main

import (
    "fmt"
)

func main() {
    s := "Hello, World!"
    b := []byte(s)
    fmt.Println(b)
}

In the above code, we first define a string s, which contains the text to be converted. Next, we use b := []byte(s) to convert s into a byte slice. Finally, use the fmt.Println() function to output b, and the complete byte slice can be printed.

3. Byte to Hexadecimal

In golang, converting byte slices to hexadecimal values ​​is a very common operation. We can use the EncodeToString() function in the hex package to achieve this task. The following is a sample code:

package main

import (
    "encoding/hex"
    "fmt"
)

func main() {
    b := []byte{'H', 'e', 'l', 'l', 'o', ',', ' ', 'W', 'o', 'r', 'l', 'd', '!'}
    s := hex.EncodeToString(b)
    fmt.Println(s)
}

In the above code, we first define a byte slice b, which contains each byte of the string "Hello, World!". Next, we use hex.EncodeToString(b) to convert b to a hexadecimal string type. Finally, use the fmt.Println() function to output s to print out the complete hexadecimal string.

4. Hexadecimal to Bytes

Converting hexadecimal values ​​to byte slices is also very simple. We can use the DecodeString() function in the hex package to achieve this task. The following is a sample code:

package main

import (
    "encoding/hex"
    "fmt"
)

func main() {
    s := "48656c6c6f2c20576f726c6421"
    b, _ := hex.DecodeString(s)
    fmt.Println(string(b))
}

In the above code, we first define a hexadecimal string s, which contains the text to be converted. Next, we use hex.DecodeString(s) to convert s into a byte slice. Finally, use the string() function to convert the byte slice into a string type, and use the fmt.Println() function to output the string to print out the complete "Hello, World!" text.

In short, byte conversion is a very common operation in golang, so we need to master the common conversion methods and the use of related functions. The above four conversion methods are relatively basic and commonly used conversion methods. If you master these methods, you will be more comfortable with daily development work.

The above is the detailed content of How to convert bytes in golang. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn