我想从命令行读取标准输入,但是在提示我输入之前,我的尝试以结束程序退出而告终。我正在寻找C#中的Console.ReadLine()等效项。
这是我目前拥有的:
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
fmt.Print("Enter text: ")
text, _ := reader.ReadString('\n')
fmt.Println(text)
fmt.Println("Enter text: ")
text2 := ""
fmt.Scanln(text2)
fmt.Println(text2)
ln := ""
fmt.Sscanln("%v", ln)
fmt.Println(ln)
}
bufio
任何读取器(例如bufio.NewReader(os.Stdin)
)的缓冲与下划线读取器(例如fmt.Scanln(x)
直接从读取os.Stdin
)的直接读取混合使用。缓冲可以任意向前读取。(在这种情况下,后面的应该fmt.Fscanln(reader,x)
从同一缓冲区读取)。
fmt.Sscanln
工作,跑步后变成“%v”