Maison >développement back-end >Golang >Comment puis-je décoder des chaînes hexadécimales en tranches []byte dans Go ?

Comment puis-je décoder des chaînes hexadécimales en tranches []byte dans Go ?

DDD
DDDoriginal
2024-11-13 04:16:02962parcourir

How Can I Decode Hex Strings into []byte Slices in Go?

Décodage de chaînes hexadécimales en []tranches d'octets dans Go

Dans Go, il existe un moyen pratique de convertir des chaînes hexadécimales en tranches d'octets . Cela peut être utile lorsque vous traitez des données binaires représentées sous forme de chaînes hexadécimales ou lorsque vous devez analyser des données codées dans ce format.

La fonction hex.DecodeString() dans le package encoding/hex est la solution. Il prend une chaîne hexadécimale en entrée et renvoie une tranche d'octets contenant les données décodées. L'exemple suivant démontre son utilisation :

s := "46447381"

data, err := hex.DecodeString(s)
if err != nil {
    panic(err)
}
fmt.Printf("% x", data)

Sortie :

46 44 73 81

Cependant, il est important de noter que si vous imprimez directement la tranche d'octets à l'aide de fmt. Println(data), les valeurs seront au format décimal et non hexadécimal.

fmt.Println(data)

Sortie :

[70 68 115 129]

Ces valeurs représentent les mêmes nombres, juste en base décimale.

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