How to Read from stdin in Go

Read from stdin in Go using bufio.NewScanner(os.Stdin) to process input line-by-line.

Use bufio.NewScanner(os.Stdin) to read input line-by-line from standard input.

package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	scanner := bufio.NewScanner(os.Stdin)
	for scanner.Scan() {
		fmt.Println(scanner.Text())
	}
	if err := scanner.Err(); err != nil {
		fmt.Fprintln(os.Stderr, "error:", err)
	}
}