Hejsan.. Du ska läsa i en loop så att du läser igenom hela filen och sen får du titta på elementen om de är intressanta Men problemet jag har är hur jag plockar ut de fält som jag tycker är intressant.. t.ex. så här. Som sagt det kan bli lite krångligt. Oftast lättare med XmlDocument. Men readern är snabbast.XML reader
Jag är ganska ny här på Pellesoft och inte någon direkt van programmerare.
Jag har lite problem att läsa ut information från en XML fil. Jag har lyckats skriva till den men har problem med hur jag ska läsa.
Min xml fil sre ut som följande:
- <Cars>
<chkAC>Rad1</chkAC>
<chkVinterdack>Cell1</chkVinterdack>
</Cars>
- <Cars>
<chkAC>Rad2</chkAC>
<chkVinterdack>Cell2</chkVinterdack>
</Cars>
- <Cars>
<chkAC>Rad3</chkAC>
<chkVinterdack>Cell3</chkVinterdack>
</Cars>
</dsPubs>
Och jag vill kunna läsa ut varje Cars för sig och deras underelement.
Jag provade skirva såhär:
XmlTextReader textReader = new XmlTextReader("c:\\userInfo2.xml");
textReader.Read();
// textReader.MoveToElement();
textReader.ReadStartElement("Cars");
Label1.Text = ("Name: " + textReader.Read());
Men då klagar den på att den inte hittar Cars.
Tack på förjand!
mvh KrilleSv: XML reader
Do While (reader.Read())
' Do some work here on the data.
Console.WriteLine(reader.Name)
Loop
reader.NodeType kan vara bra att använda också
Ett enklare sätt för dig kanske är XmlDocument klassen.Sv:XML reader
Alltså i <Cars> och fälten där som heter <chkAC> och <chkVintardack>.
Tack på förhand!Sv: XML reader
<code>
Do While xr.Read
If xr.Name = "Cars" And xr.NodeType = XmlNodeType.Element Then
'för varje bil
Do While xr.Read
If xr.Name = "chkAC" And xr.NodeType = XmlNodeType.Element Then
Dim AC_value As String = xr.ReadContentAsString
End If
'kolla om du står på </Cars> isf hoppa ur loopen som letar efter <chk...>
If xr.Name = "Cars" And xr.NodeType = XmlNodeType.EndElement Then Exit Do
Loop
End If
Loop
</code>