Maison > développement back-end > Golang > Comment attribuer en toute sécurité une chaîne Go à un tableau d'octets ?

Comment attribuer en toute sécurité une chaîne Go à un tableau d'octets ?

Patricia Arquette
Libérer: 2024-12-16 09:00:25
original
818 Les gens l'ont consulté

How to Safely Assign a Go String to a Byte Array?

Attribution d'une chaîne à un tableau d'octets dans Go

Dans Go, l'attribution d'une chaîne à un tableau d'octets peut être réalisée par différentes méthodes. Une approche courante consiste à convertir la chaîne en tranche d'octets à l'aide de la syntaxe []byte(str). Cependant, cette méthode n'est pas sécurisée et pourrait potentiellement entraîner une corruption des données ou un comportement involontaire.

Méthode recommandée : conversion directe

Un moyen simple et sûr de convertir une chaîne en un tableau d'octets s'effectue en utilisant directement la conversion de type []byte(), comme le montre l'exemple suivant :

[]byte("Here is a string....")
Copier après la connexion

Cette méthode crée un octet tableau avec le contenu de la chaîne, garantissant la sécurité du type et évitant les problèmes potentiels.

Méthodes supplémentaires :

  • Utilisation de la boucle de plage :

    var arr [20]byte
    str := "abc"
    for k, v := range []byte(str) {
    arr[k] = byte(v)
    }
    Copier après la connexion
  • Utilisation de la copie Fonction :

    var arr [20]byte
    str := "abc"
    copy(arr[:], []byte(str))
    Copier après la connexion
  • Utilisation de la manipulation de chaînes :

    var arr [20]byte
    str := "abc"
    for i := range []byte(str) {
    arr[i] = []byte(str)[i]
    }
    Copier après la connexion

Cependant, ces méthodes sont pas aussi simple et sûr que l'approche de conversion directe. Pour la plupart des scénarios, il est recommandé d'utiliser la conversion []byte() directement pour attribuer une chaîne à un tableau d'octets dans Go.

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal