使用Go語言解決Scan空格結束輸入問題
問題
Go語言的輸入Scan
,無論是Scanf
,還是Scanln
還是其他,都是以空格結束輸入的。
但是我們輸入可能是帶空格的。
比如 Fan One 666
Scan
var msg string _,_ =fmt.Scan(&msg) fmt.Printf(msg)
Scanf
var msg string _,_ =fmt.Scanf("%s",&msg) fmt.Printf(msg)
Scanln
var msg string _,_ =fmt.Scanln(&msg) fmt.Printf(msg)
可以看出三個都是這樣,空格就結束瞭輸入
解決
那我們就不能用Scan
瞭,轉用bufio
的標準輸入輸出格式
var msg string reader := bufio.NewReader(os.Stdin) // 標準輸入輸出 msg,_ = reader.ReadString('\n') // 回車結束 msg = strings.TrimSpace(msg) // 去除最後一個空格 fmt.Printf(msg)
問題解決瞭。
以上就是使用Go語言解決Scan空格結束輸入問題的詳細內容,更多關於Go解決Scan空格結束輸入問題的資料請關註WalkonNet其它相關文章!