Rozhodně dávej pozor na strukturu XML, hodnoty atributů musí být v uvozovkách. Pokud máš element a chceš přečíst to, co je uvnitř, stačí zavolat ReadElementString, která vnitřní hodnotu vrátí. Hodnotu atributu získáš zavoláním GetAttribute(atribut), ale pokud před tím zavoláš ReadStartElement, tak kurzor přeskočí až za ty atributy. Musíš tedy zavolat jenom Read, která přeskočí element a skočí na atributy. Po přečtení atributů musíš Read zavolat znovu, aby kurzor skočil za element s atributy. Správný kód je takhle:
Using reader As Xml.XmlReader = Xml.XmlReader.Create("config.xml")
reader.ReadStartElement("Configuration")
'odezva
cas = reader.ReadElementString("frq")
reader.Read()
If CBool(reader.GetAttribute("enabled")) Then
reader.Read()
jmeno = reader.ReadElementString("jmeno")
heslo = reader.ReadElementString("pass")
Else
jmeno = "anonym"
heslo = ""
End If
reader.ReadEndElement()
reader.Close()
End Using
|