提问人:Julio Martínez 提问时间:9/20/2022 最后编辑:Julio Martínez 更新时间:9/21/2022 访问量:169
如何在 Windows 中使用 Golang 读取字符而无需返回键?
How to read a char with Golang in Windows without requiring return key?
问:
在我在 MS Windows 上运行的 Go 程序中,我想获得带有 y/n/a 键的“删除文件”操作的确认,并且它将被重复很多次。而且我不想每次都按回车键。
我尝试过从 Go 中的标准输入中读取字符(不按 Enter)中的答案,但没有成功。
- 答案基于 It is for UNIX
exec.Command("stty", "-F", "/dev/tty", "cbreak", "min", "1").Run()
- 基于termbox-go的答案,对于我需要的东西来说有点矫枉过正,只是为了阅读一个字符。我没有时间学习和使用 termbox-go
- getchar.go的 它适用于OSX
- https://github.com/eiannone/keyboard它挂起并且不读取击键
- golang.org/x/term 给出错误
term.MakeRaw(int(os.Stdin.Fd()))
The handle is invalid
- 下一个答案:它仅适用于Linux
- 最后一个答案没有显示如何读取字符
对 Windows 有什么建议吗?我发现 Golang 没有类似于 的内置方法有点了不起,或者至少在包中,例如,readRune 或 readByte 仍然需要,即使您应该只读取其中之一。getChar()
io
bufio
Enter
答: 暂无答案
评论