Считать строку в Golang, используя буфер

Есть ли более красивый способ считать строку, обрезая символ переноса строки?

package main

import (
    "bufio"
    "os"
    "strings"
)

func main() {
    str, _ := bufio.NewReader(os.Stdin).ReadString('\n')
    str = strings.Trim(str, "\n")
}

Ответы (1 шт):

Автор решения: Ainar-G

Можете воспользоваться bufio.Scanner:

var scanner = bufio.NewScanner(os.Stdin)
for scanner.Scan() {
    fmt.Printf("%q\n", scanner.Text())
}

err = scanner.Err()
if err != nil {
    panic(err)
}
→ Ссылка