我尝试使用标准" fmt"从stdin扫描一些命令。封装
然而,似乎scanf在第一个空格后停止。知道如何解决它吗?
var in string
for err != nil {
_, err = fmt.Scanf("%s", &in)
}
fmt.Println(in)
答案 0 :(得分:4)
我发现我需要的是bufio.Scan包
scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
return scanner.Text()
}
if err := scanner.Err(); err != nil {
fmt.Fprintln(os.Stderr, "reading standard input:", err)
}