Метод bytes.Buffer.WriteString
Метод bytes.Buffer.WriteString записывает
содержимое строки в буфер типа bytes.Buffer.
В качестве единственного параметра он принимает
строку для записи. Метод возвращает количество
записанных байтов и ошибку (которая всегда равна nil,
если запись прошла успешно). Этот метод удобно
использовать для эффективного построения строк
без создания множества промежуточных объектов.
Синтаксис
buffer.WriteString(str)
Пример
Давайте создадим буфер и запишем в него строку "abcde":
package main
import (
"bytes"
"fmt"
)
func main() {
var buf bytes.Buffer
n, err := buf.WriteString("abcde")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Written bytes:", n)
fmt.Println("Buffer content:", buf.String())
}
Результат выполнения кода:
"Written bytes: 5"
"Buffer content: abcde"
Пример
Давайте последовательно запишем несколько строк в один буфер:
package main
import (
"bytes"
"fmt"
)
func main() {
var buf bytes.Buffer
buf.WriteString("Hello, ")
buf.WriteString("world")
buf.WriteString("!")
fmt.Println(buf.String())
}
Результат выполнения кода:
"Hello, world!"
Пример
Метод WriteString может использоваться
для эффективной конкатенации строк внутри цикла:
package main
import (
"bytes"
"fmt"
)
func main() {
var buf bytes.Buffer
for i := 0; i < 5; i++ {
buf.WriteString("a")
}
fmt.Println(buf.String())
}
Результат выполнения кода:
"aaaaa"
Смотрите также
-
метод
bytes.Buffer.String,
который возвращает содержимое буфера в виде строки -
метод
bytes.Buffer.Write,
который записывает срез байтов в буфер -
метод
bytes.Buffer.Bytes,
который возвращает срез байтов из буфера -
метод
strings.Builder.WriteString,
который выполняет аналогичную операцию для типаstrings.Builder