Bagaimanakah anda boleh memasukkan data pada permulaan bait. Penampan dalam Golang?

Barbara Streisand
Lepaskan: 2024-10-27 10:45:30
asal
872 orang telah melayarinya

How can you insert data at the beginning of a bytes.Buffer in Golang?

Menulis ke Permulaan Penampan di Golang

Apabila bekerja dengan bait.Jenis Penampan di Golang, adalah amalan biasa untuk menambahkan data ke penimbal menggunakan kaedah seperti WriteString. Walau bagaimanapun, bagaimana jika anda ingin memasukkan data pada permulaan penimbal?

Masalah:

Anda mempunyai bait.Penimbal dipanggil penimbal dan rentetan s mengandungi data untuk menulis. Menggunakan kaedah WriteString, anda menambahkan s pada penghujung penimbal. Adakah mungkin untuk menulis pada permulaan penimbal dan bukannya menambah?

Penyelesaian:

Walaupun kepingan buf asas bagi bait.Penimbal tidak dieksport secara langsung, anda masih boleh mencapai penulisan pada permulaan penimbal menggunakan langkah berikut:

  1. Tulis aksara awalan kecil ("B" dalam contoh) ke penimbal menggunakan WriteString.
  2. Tukar kandungan penimbal semasa kepada rentetan menggunakan Rentetan.
  3. Tetapkan semula penimbal menggunakan Reset.
  4. Tulis aksara awalan sekali lagi, tetapi kali ini digabungkan dengan rentetan yang ditukar sebelum ini ("A" s dalam contoh).

Contoh:

<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>
Salin selepas log masuk

Output:

AB
Salin selepas log masuk

Dalam contoh ini , kami mula-mula menambah "B" pada penimbal, mendapatkan semula kandungan penimbal semasa sebagai rentetan, menetapkan semula penimbal, dan akhirnya menulis "A" diikuti dengan rentetan yang diperoleh semula, dengan berkesan menambahkan "A" pada penimbal.

Atas ialah kandungan terperinci Bagaimanakah anda boleh memasukkan data pada permulaan bait. Penampan dalam Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan