Ich möchte die Standardeingabe über die Befehlszeile lesen, aber meine Versuche wurden mit dem Beenden des Programms beendet, bevor ich zur Eingabe aufgefordert werde. Ich suche das Äquivalent von Console.ReadLine () in C #.
Folgendes habe ich derzeit:
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
fmt.Print("Enter text: ")
text, _ := reader.ReadString('\n')
fmt.Println(text)
fmt.Println("Enter text: ")
text2 := ""
fmt.Scanln(text2)
fmt.Println(text2)
ln := ""
fmt.Sscanln("%v", ln)
fmt.Println(ln)
}
bufio
Pufferung eines Lesegeräts (z. B. bufio.NewReader(os.Stdin)
) nicht mit direkten Lesevorgängen vom unterstrichenen Lesegerät (z. B. fmt.Scanln(x)
direkten Lesevorgängen von os.Stdin
). Die Pufferung kann beliebig weit voraus gelesen werden. (In diesem speziellen Fall sollte das fmt.Fscanln(reader,x)
letztere aus demselben Puffer gelesen werden).
fmt.Sscanln
Arbeiten, es wird "% v" nach dem Laufen