Golang XML Parse

Golang XML Parse
I denne artikkelen vil vi utforske hvordan du kan analysere XML ved hjelp av koding/XML -pakken. Husk at dette er en grunnleggende tutorial som du kan utvide for å jobbe med hvilken som helst XML -fil.

Eksempel på XML -fil

I dette eksemplet vil vi bruke eksemplet XML -filen som angitt nedenfor. Kopier gjerne innholdet og eksperimenter med det selv.




Gambardella, Matthew
XML Developers Guide
Datamaskin
44.95
2000-10-01
Et dyptgående blikk på å lage applikasjoner
med XML.



Ralls, Kim
Midnattregn
Fantasi
5.95
2000-12-16
En tidligere arkitekt kjemper mot bedriftens zombier,
en ond trollkvinne, og hennes egen barndom for å bli dronning
av verden.



Corets, Eva
Maeve Ascendant
Fantasi
5.95
2000-11-17
Etter sammenbruddet av en nanoteknologi
samfunnet i England, de unge overlevende lå
Foundation for a New Society.


Det forrige eksemplet inneholder en katalog over forskjellige bøker med nestede elementer, som forfatter, tittel, sjanger og mer.

Import

Det første trinnet er å importere den nødvendige pakken. For denne opplæringen trenger vi OS -pakken for å lese filer og koding/XML -pakken for å analysere XML -filer:

import (
"OS"
"FMT"
"OS"
)

Når vi er importert, kan vi komme i gang.

Golang Les XML -fil

La oss starte med å lese XML -filen vår. Vi kan gjøre dette ved hjelp av den åpne metoden fra OS -pakken. Et eksempelkode er som vist nedenfor:

pakkehoved
import (
"Logg"
"OS"
)
FUNCMAIN ()
// Åpne XML
Fil, feil: = OS.Åpne ("Bøker.XML ")
Hvis feil != nil
Logg.Fatal (feil)

utsett.Lukk()

Definere strukturer

For å analysere XML, må vi benytte oss av Golang -strukturer. Vi kan lage en for å representere bokkatalogen fra XML -filen.

Følgende eksempel gir bokkonstruksjonen.

Den resulterende koden er som vist:

skriv bøker struktur
Xmlnamexml.Navn 'XML: "Book"'
Forfatterstreng 'XML: "Forfatter"'
Tittelstreng 'xml."tittel"'
Sjangerstreng 'xml."sjanger"'
Pris float64 'xml."pris"'
Publiser Data String 'XML."publiser_date" '
Beskrivelse Streng 'XML."beskrivelse"'

Golang Marshals XML

Neste trinn er å marsjere XML -dataene. Derfor må vi konvertere dataene til byte -matrise. Vi kan gjøre dette ved å bruke koden nedenfor:

b_arr: = ioutil.Leser (fil)
var bøker
XML.Unmarshal (B_arr, og bøker)

Nå som XML -informasjonen er lagret i strukturen, kan du referere til feltene for å få verdien.

Konklusjon

Denne artikkelen var en opplæring om analysering av XML -filer ved hjelp av koding/XML -pakken. Vi diskuterte det grunnleggende, importen, leste XML -filen, definerer strukturene og hvordan Golang Marshals XML -dataene. Vi håper du fant denne artikkelen nyttig. Sjekk ut andre Linux -hint -artikler for flere tips og informasjon.