Golang Ioutil

Golang Ioutil
Ioutil -pakken i Go brukes til å tilby I/O -funksjoner. Det er en praktisk pakke når du trenger å jobbe med filer.

I denne artikkelen vil vi utforske noen nyttige metoder og funksjonaliteter implementert av Ioutil -pakken.

Påkrevd import

Ioutil -pakken er en del av Go Standard Library. Vi må imidlertid importere det før bruk. Du kan gjøre dette ved å legge til en importklausul som:

importere "ioutil"

Ioutil.LESEALT ()

Den første metoden vi kan bruke fra Ioutil -pakken er Readall () -metoden. Funksjonssyntaksen er som vist:

func readall (r io.Leser) ([] byte, feil)

Funksjonen vil lese fra IO.Leser r til slutten av filen (eof) eller en feil oppstår. Funksjonen vil deretter returnere innholdet som er lest fra IO.Leser.

Vi kan illustrere hvordan du bruker Readall () -metoden som vist i koden nedenfor:

pakkehoved
import (
"FMT"
"io/ioutil"
"Logg"
"Strenger"
)
func main ()
r: = strenger.NewReader ("Dette er en enkel streng")
B, feil: = ioutil.Leser (R)
Hvis feil != nil
Logg.Fatal (feil)

fmt.Println (streng (b))

I eksemplet over bruker vi Readall () -metoden for å lese IO.Reader R opprettet ved hjelp av NewReader () -metoden.

Funksjonen skal returnere en skive av byte som vi kan konvertere tilbake til en streng ved hjelp av strengsmetoden.

Koden over skal returnere en utdata som:

Dette er en enkel streng

Vi kan også bruke Readall () -metoden for å lese en fil som vist i koden nedenfor:

pakkehoved
import (
"FMT"
"io/ioutil"
"Logg"
"OS"
)
func main ()
Fil, feil: = OS.Åpne ("Hei.tekst")
Hvis feil != nil
Logg.Fatal (feil)

utsett fil.Lukk()
Innhold, feil: = ioutil.Leser (fil)
Hvis feil != nil
Logg.Fatal (feil)

fmt.Println (streng (innhold))

I eksemplet over bruker vi Readall () -metoden for å lese en fil som spesifisert i OS.Åpen () -metode.

Ioutil.ReadFile ()

ReadFile () -metoden leser filen som spesifisert og returnerer filinnholdet. Et eksempelkode er som vist:

Data, feil: = ioutil.ReadFile ("Hei.tekst")
Hvis feil != nil
Logg.Fatal (feil)

fmt.Println (streng (data))

I eksemplet over bruker vi ReadFile () -metoden for å lese “Hei.txt ”-fil og returner innholdet.

Ioutil.Readdir ()

En annen nyttig metode fra Ioutil -pakken er Readdir () -metoden. Funksjonssyntaks er som vist nedenfor:

func readdir (dirname string) ([] fs.Fileinfo, feil)

Funksjonen tar katalognavnet som en streng og returnerer en liste over katalogoppføringer sortert etter filnavnet.

Et eksempelkode er som vist:

ls, feil: = ioutil.Readdir (".")
Hvis feil != nil
Logg.Fatal (feil)

for _, ls: = rekkevidde ls
fmt.Println (LS.Navn())

Eksemplet bruker readdir () for å få listen over filer i den gjeldende katalogen. Vi bruker deretter en variabel LS for å lagre resultatet. Til slutt setter vi en for loop med rekkeoperatøren for å liste individuelle elementer.

Et eksempelutgang er som vist:

Hallo.tekst
ioutil.gå

Ioutil.Skrivefil ()

En annen nyttig metode fra Ioutil -pakken er WritFile () -metoden. Denne metoden skriver dataene til den spesifiserte filen. Hvis filen ikke eksisterer, vil WritFile () -metoden opprette den ved hjelp av perm og avkortet den før du skriver.

Funksjonssyntaksen er som vist:

func writfile (filnavn streng, data [] byte, perm fs.Filemode) feil

Et eksempelkode viser hvordan du skriver til en fil ved hjelp av skrivefilmetoden.

skriv_this: = [] byte ("en ny oppføring i filen")
feil: = ioutil.Skrivfile ("Hei.txt ", skriv_this, 0644)
Hvis feil != nil
Logg.Fatal (feil)

Ovennevnte kode bruker WritFile () for å skrive en sekvens av byte til den spesifiserte filen. Hvis filen ikke eksisterer, vil funksjonen opprette den med tillatelsen 0644.

Konklusjon

I denne artikkelen dekker vi hvordan vi bruker forskjellige metoder og operasjoner levert av Ioutil -pakken. Du kan sjekke dokumentasjonen for å lære mer.

Takk for at du leser og lykkelig koding!