Überschreiben des Anfangs eines Puffers in Golang
In Golang kann der Typ bytes.Buffer zum Schreiben und Lesen von Daten in a verwendet werden Puffer. Standardmäßig wird das Anhängen an den Puffer mithilfe der WriteString-Methode erreicht. Es kann jedoch Szenarien geben, in denen das Schreiben an den Anfang des Puffers erwünscht ist.
Können wir an den Anfang eines Puffers schreiben?
Standardmäßig ist der WriteString Die Methode hängt die bereitgestellte Zeichenfolge an das Ende des Puffers an. Die zugrunde liegende Implementierung von bytes.Buffer wird nicht exportiert, was es schwierig macht, direkt auf das zugrunde liegende Slice des Puffers zuzugreifen und es zu ändern.
Lösung:
An den Anfang schreiben eines Puffers können Sie die folgende Problemumgehung verwenden:
Beispiel :
<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") buffer.WriteString(s) fmt.Println(buffer.String()) }</code>
Ausgabe:
AB
Durch Verketten und Umschreiben der Zeichenfolge überschreibt der Code effektiv den Inhalt des Puffers und platziert den gewünschten Zeichenfolge am Anfang.
Das obige ist der detaillierte Inhalt vonWie kann man in Golang an den Anfang eines bytes.Buffer schreiben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!