Функция fmt.Fprint
Функция fmt.Fprint записывает форматированный вывод в любой объект,
реализующий интерфейс io.Writer. В первый параметр передается
объект-приемник данных, в последующие параметры передаются значения,
которые нужно записать. Функция возвращает количество записанных байт
и ошибку, если она произошла. В отличие от fmt.Fprintln,
эта функция не добавляет символ новой строки в конце вывода.
Синтаксис
fmt.Fprint(w io.Writer, a ...interface{}) (n int, err error)
Пример
Давайте запишем строку в стандартный вывод, используя fmt.Fprint:
package main
import (
"fmt"
"os"
)
func main() {
res, err := fmt.Fprint(os.Stdout, "Hello, World!")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("\nWritten bytes:", res)
}
Результат выполнения кода:
"Hello, World!"
"Written bytes: 13"
Пример
Давайте запишем строку в буфер bytes.Buffer:
package main
import (
"bytes"
"fmt"
)
func main() {
var buf bytes.Buffer
res, err := fmt.Fprint(&buf, "Hello, World!")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Buffer content:", buf.String())
fmt.Println("Written bytes:", res)
}
Результат выполнения кода:
"Buffer content: Hello, World!"
"Written bytes: 13"
Пример
Давайте запишем несколько значений разных типов:
package main
import (
"bytes"
"fmt"
)
func main() {
var buf bytes.Buffer
name := "John"
age := 30
score := 95.5
res, err := fmt.Fprint(&buf, "Name: ", name, ", Age: ", age, ", Score: ", score)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Result:", buf.String())
fmt.Println("Written bytes:", res)
}
Результат выполнения кода:
"Result: Name: John, Age: 30, Score: 95.5"
"Written bytes: 38"
Пример
Давайте запишем данные в файл:
package main
import (
"fmt"
"os"
)
func main() {
file, err := os.Create("output.txt")
if err != nil {
fmt.Println("Error:", err)
return
}
defer file.Close()
res, err := fmt.Fprint(file, "This is a test string")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Written", res, "bytes to file")
}
Результат выполнения кода:
"Written 22 bytes to file"
Смотрите также
-
функцию
fmt.Fprintln,
которая записывает данные с добавлением новой строки -
функцию
fmt.Fprintf,
которая записывает форматированные данные по шаблону -
функцию
fmt.Print,
которая записывает данные в стандартный вывод -
функцию
fmt.Sprint,
которая возвращает форматированную строку, а не записывает в io.Writer