5

我想显示一个“>”,然后让程序等待用户在命令行中输入一些内容并按 Enter(并最终将其存储为字节片)。在Java中,我会做类似的事情:

Scanner scanner = new Scanner(System.in);

System.out.print("> ");
String sentence = scanner.nextLine();

我已经尝试了一些涉及os.Args, console.ReadBytes('\n'), 和的事情bufio.NewReader(os.Stdin),但我仍然没有弄清楚。任何建议将不胜感激。谢谢。

4

1 回答 1

10

一些 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))
    }
}
于 2013-09-21T19:33:47.137 回答