Golang Scanner -pakke

Golang Scanner -pakke

I denne leksjonen om skannerpakke i Golang, vil vi studere forskjellige eksempler på hvordan du bruker skannere på flere måter i Go -programmeringsspråk. Vi kommer i gang nå.

Starter med go

Bare for å sikre at vi har miljøoppsettet konsekvent, her er katalogstrukturen jeg laget for Hello World -programmet mitt:

Her er programmet vi opprettet:

pakkehoved
Importer "FMT"
func main ()
fmt.Printf ("Hei, verden.\ n ")

Vi kan kjøre programmet ovenfor med følgende kommando:

gå løp hei.gå

Når vi har kjørt denne kommandoen, her er utgangen du vil se:

Nå ser det bra ut. La oss flytte til hovedagendaen vår.

Skanner og Bufio -pakke i Golang

I dette innlegget vil vi gå gjennom Bufio- og Scanner -pakkene.

Vi vil starte med et veldig enkelt eksempel for å dele opp strenger i flere ord. La oss ved følgende eksempel:

pakkehoved
import (
"Bufio"
"FMT"
"Strenger"
)
func main ()
inputstr: = "Golang Shubham Linux"
Skanner: = Bufio.Newscanner (strenger.NewReader (inputstr))
skanner.Split (Bufio.Skanneord)
for skanner.Skann ()
fmt.Println (skanner.Tekst())

Utgangen til dette programmet vil være:

Golang
Shubham
Linux

Her brukte skanneren bufret inngangsutgang ved å lese gitt inngang som en strøm.

Leser en fil

La oss nå prøve å lese en fil i Go, ved å bruke Bufio for å lese en fillinje for linje. For å gjøre dette, oppretter vi først en eksempelfil i samme katalog som GO -programmet vårt. Her er filen vår:

Deretter skriver vi programmet vårt for å lese denne fillinjen for linje:

pakkehoved
import (
"Bufio"
"FMT"
"Logg"
"OS"
)
func main ()
filetoread, feil: = OS.Åpen("./Hallo.tekst")
Hvis feil != nil
Logg.Fatal feil)

utsetter filetoread.Lukk()
Skanner: = Bufio.Newscanner (Filetoread)
for skanner.Skann ()
fmt.Println (skanner.Tekst())

Hvis feil: = skanner.Feil (); feil != nil
Logg.Fatal feil)

Når vi har kjørt dette programmet, er her utdataene vi får

Tar brukerinngang med Bufio

Dette er den mest nyttige operasjonen som faktisk skal utføres når en bruker begynner med Golang -språket.

Vi kan ta en brukerinngang som:

pakkehoved
import (
"Bufio"
"FMT"
"OS"
)
func main ()
Leser: = Bufio.NewReader (OS.Stdin)
fmt.Print ("Enter Text:")
tekst, _: = leser.ReadString ('\ n')
fmt.Println (tekst)

La oss kjøre dette programmet nå:

Bare for å merke seg at det er en annen måte å ta innspill hvis du ikke er ok, ikke godtar et rom i det:

pakkehoved
Importer "FMT"
var inngangsstreng
func main ()
fmt.Print ("Enter Your Name =")
fmt.SCANF ("%S", og input)
fmt.Println ("Hello"+Input)

La oss kjøre dette programmet nå:

Konklusjon

For å studere er skanner og bufio -pakke i Go er veldig nyttig, og det er aldri mulig å få nok. Les flere eksempler for pakken og prøv så mye som mulig på egen hånd.