Maison  >  Article  >  développement back-end  >  Comment convertir des octets en Golang

Comment convertir des octets en Golang

PHPz
PHPzoriginal
2023-04-14 13:45:20682parcourir

golang est un langage de programmation largement utilisé dans le développement back-end. Ses puissantes fonctionnalités de concurrence et sa vitesse d'exécution efficace sont privilégiées par les développeurs. En Golang, la conversion d'octets est également une opération très courante. Cet article vous présentera les méthodes de conversion d'octets couramment utilisées dans Golang et comment utiliser les fonctions associées.

1. Convertir des octets en chaînes

En golang, la méthode de conversion d'octets en chaînes est très simple. Il suffit d'utiliser la fonction string() pour convertir la tranche d'octets en un type chaîne. Voici un exemple de 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)
}

Dans le code ci-dessus, nous définissons d'abord une tranche d'octets b, qui contient chaque octet de la chaîne "Hello, World !". Ensuite, nous utilisons s := string(b) pour convertir b en type chaîne. Enfin, utilisez la fonction fmt.Println() pour générer des s, et la chaîne complète « Hello, World ! » peut être imprimée.

2. Convertir une chaîne en octet

La conversion d'une chaîne en tranche d'octets est également très simple. Il suffit d'utiliser la fonction []byte(), qui convertit la chaîne en tranche d'octets. Voici un exemple de code :

package main

import (
    "fmt"
)

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

Dans le code ci-dessus, nous définissons d'abord une chaîne s, qui contient le texte à convertir. Ensuite, nous utilisons b := []byte(s) pour convertir s en tranche d'octets. Enfin, utilisez la fonction fmt.Println() pour afficher b, et la tranche d'octets complète peut être imprimée.

3. Octet en hexadécimal

En Golang, la conversion de tranches d'octets en valeurs hexadécimales est une opération très courante. Nous pouvons utiliser la fonction EncodeToString() dans le package hex pour réaliser cette tâche. Voici un exemple de 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)
}

Dans le code ci-dessus, nous définissons d'abord une tranche d'octets b, qui contient chaque octet de la chaîne "Hello, World !". Ensuite, nous utilisons hex.EncodeToString(b) pour convertir b en un type de chaîne hexadécimal. Enfin, utilisez la fonction fmt.Println() pour générer des s afin d'imprimer la chaîne hexadécimale complète.

4. Hexadécimal en octets

La conversion de valeurs hexadécimales en tranches d'octets est également très simple. Nous pouvons utiliser la fonction DecodeString() dans le package hex pour réaliser cette tâche. Voici un exemple de code :

package main

import (
    "encoding/hex"
    "fmt"
)

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

Dans le code ci-dessus, nous définissons d'abord une chaîne hexadécimale s, qui contient le texte à convertir. Ensuite, nous utilisons hex.DecodeString(s) pour convertir s en tranche d'octets. Enfin, utilisez la fonction string() pour convertir la tranche d'octets en un type de chaîne et utilisez la fonction fmt.Println() pour générer la chaîne afin d'imprimer le texte complet "Hello, World!".

En bref, la conversion d'octets est une opération très courante dans Golang, nous devons donc maîtriser les méthodes de conversion courantes et l'utilisation des fonctions associées. Les quatre méthodes de conversion ci-dessus sont des méthodes de conversion relativement basiques et couramment utilisées. Si vous maîtrisez ces méthodes, vous serez plus à l'aise avec le travail de développement quotidien.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn