Jarlius / Progp-S2

0 stars 0 forks source link

Rätt indataformat till Analyzer #2

Closed Jarlius closed 7 years ago

Jarlius commented 7 years ago

Just nu tar programmet emot strängar från terminalen, och detta fungerar mycket bra.

func main() {
    reader := bufio.NewReader(os.Stdin)
    text,_ := reader.ReadString('\n')
    ...
}

Men detta är i slutändan inte önskvärt eftersom kattis vill skicka indatasträngar som filer. Det står ändå att kattis kommer skicka indatafilerna på System in.

Vi får hitta vilken biblioteksfunktion i bufio som klarar av detta.

Jarlius commented 7 years ago

Biblioteksfunktionen var Scanner, som skickar in alla rader som skrivs till scannern till Parser. Sålunda tar den även emot en textfil, med cat textfil | go run s2.go kommandot.

Jarlius commented 7 years ago

Inspiration till lösningen hittade jag på länken:

https://golang.org/src/bufio/example_test.go

scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
    fmt.Println(scanner.Text()) // Println will add back the final '\n'
}