Erhalten von Zeicheneingaben, ohne die Eingabetaste in Go zu drücken
Um zu vermeiden, dass nach der Zeicheneingabe in Go die Eingabetaste gedrückt werden muss, können Sie Folgendes verwenden: Gehen Sie wie folgt vor.
Beispiel
Der folgende Code veranschaulicht, wie dieser Ansatz implementiert wird:
package main import ( "fmt" "os" "os/exec" ) func main() { // disable input buffering exec.Command("stty", "-F", "/dev/tty", "cbreak", "min", "1").Run() // do not display entered characters on the screen exec.Command("stty", "-F", "/dev/tty", "-echo").Run() var b []byte = make([]byte, 1) for { os.Stdin.Read(b) fmt.Println("I got the byte", b, "("+string(b)+")") } }
Diese Lösung bietet eine ähnliche Funktionalität wie Console.ReadKey() in C#, indem sie es Ihnen ermöglicht, ein einzelnes Zeichen zu lesen, ohne auf den Benutzer warten zu müssen um die Eingabetaste zu drücken.
Das obige ist der detaillierte Inhalt vonWie erhalte ich die Eingabe einzelner Zeichen in Go, ohne die Eingabetaste zu drücken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!