Maison > développement back-end > Golang > Comment puis-je écrire au début d'un Bytes.Buffer dans Golang ?

Comment puis-je écrire au début d'un Bytes.Buffer dans Golang ?

Susan Sarandon
Libérer: 2024-10-27 08:25:30
original
595 Les gens l'ont consulté

How Can I Write to the Beginning of a Bytes.Buffer in Golang?

Prefix Buffer écrit en Golang

En Golang, le bytes.Buffer est un type conçu pour une concaténation et une manipulation efficaces de chaînes. Cependant, certains développeurs peuvent être confrontés au besoin d'écrire au début d'un tampon, contrairement aux méthodes d'assistance intégrées (par exemple, WriteString) qui s'ajoutent uniquement au tampon.

Écrire au début du tampon.

Bien que le buf (tampon d'octets interne) sous-jacent de bytes.Buffer ne soit pas exporté, il est possible de manipuler son contenu indirectement. Voici comment y parvenir :

<code class="go">buffer.WriteString("B")
s := buffer.String()
buffer.Reset()
buffer.WriteString("A" + s)</code>
Copier après la connexion
  1. Écrire à la fin du tampon : Dans un premier temps, écrivez la chaîne "B" à la fin du tampon en utilisant WriteString.
  2. Récupérer le contenu du tampon : utilisez la méthode String pour récupérer l'intégralité du contenu du tampon au format chaîne et le stocker dans la variable s.
  3. Réinitialiser le tampon : Réinitialiser le tampon à son état initial, ce qui supprime tout le contenu précédent du tampon.
  4. Écrire au début du tampon : Écrivez la chaîne "A" suivie de la chaîne s précédemment récupérée dans le tampon en utilisant WriteString.

En concaténant "A" et s, nous écrivons effectivement "A" au début du tampon, suivi du contenu d'origine.

Exemple

Le code suivant illustre le processus :

<code class="go">package main

import (
    "bytes"
    "fmt"
)

func main() {
    var buffer bytes.Buffer
    buffer.WriteString("B")
    s := buffer.String()
    buffer.Reset()
    buffer.WriteString("A" + s)
    fmt.Println(buffer.String())
}</code>
Copier après la connexion

Sortie :

AB
Copier après la connexion

Cette stratégie fournit une solution de contournement pour écrire au début d'un tampon dans Golang malgré les limitations des octets de la bibliothèque standard.Type de tampon.

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!

source:php.cn
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