我想显示一个“>”,然后让程序等待用户在命令行中键入内容并按Enter键(并最终将其存储为字节切片)。在Java中,我会做类似的事情:
Scanner scanner = new Scanner(System.in);
System.out.print("> ");
String sentence = scanner.nextLine();
我尝试过涉及os.Args, console.ReadBytes('\n')
和bufio.NewReader(os.Stdin)
的一些事情,但我还是没有弄明白。任何建议将不胜感激。感谢。
答案 0 :(得分:6)
一些Go代码可能会有所帮助,所以我可以告诉你你做错了什么。但是你可以在Go中这样做:
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
buf := bufio.NewReader(os.Stdin)
fmt.Print("> ")
sentence, err := buf.ReadBytes('\n')
if err != nil {
fmt.Println(err)
} else {
fmt.Println(string(sentence))
}
}