399 Stimmen

Wie kann ich von der Standardeingabe in der Konsole lesen?

Ich möchte Eingaben aus der Befehlszeile lesen, aber meine Versuche endeten damit, dass das Programm beendet wird, bevor ich zur Eingabe aufgefordert werde. Ich bin auf der Suche nach dem Äquivalent von Console.ReadLine() in C#.

Das ist mein aktueller Code:

package main

import (
    "bufio"
    "fmt"
    "os"
)

func main() {
    reader := bufio.NewReader(os.Stdin)
    fmt.Print("Text eingeben: ")
    text, _ := reader.ReadString('\n')
    fmt.Println(text)

    fmt.Println("Text eingeben: ")
    text2 := ""
    fmt.Scanln(text2)
    fmt.Println(text2)

    ln := ""
    fmt.Sscanln("%v", ln)
    fmt.Println(ln)
}

13voto

Shivendra Mishra Punkte 638

Ich bin spät zur Party. Aber wie wäre es mit einer Zeile:

data, err := io.ReadAll(os.Stdin)

Und drücke einmal strg+d, wenn du fertig bist.

12voto

Nitin yadav Punkte 194

Es kann auch so gemacht werden:

package main
import "fmt"

func main(){
    var myname string
    fmt.Scanf("%s", &myname)
    fmt.Println("Hallo", myname)
}

5voto

Rohanthewiz Punkte 887

Sauber ein paar aufgeforderte Werte einlesen:

// Erstellen Sie einen einzelnen Reader, der mehrmals aufgerufen werden kann
reader := bufio.NewReader(os.Stdin)
// Aufforderung und Lesen
fmt.Print("Geben Sie Text ein: ")
text, _ := reader.ReadString('\n')
fmt.Print("Geben Sie mehr Text ein: ")
text2, _ := reader.ReadString('\n')
// Leerzeichen entfernen und ausgeben
fmt.Printf("Text1: \"%s\", Text2: \"%s\"\n",
    strings.TrimSpace(text), strings.TrimSpace(text2))

Hier ist eine Ausführung:

Geben Sie Text ein: Jim
Geben Sie mehr Text ein: Susie
Text1: "Jim", Text2: "Susie"

5voto

Shivam Sharma Punkte 290

Versuchen Sie diesen Code:

var input string
func main() {
    fmt.Print("Geben Sie Ihren Namen ein=")
    fmt.Scanf("%s", &input)
    fmt.Println("Hallo " + input)
}

5voto

Liam Mertens Punkte 61

Sie müssen einen Zeiger auf die Variable angeben, die Sie scannen möchten, wie folgt:

fmt.scan(&text2)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X