Lecture d'éléments
Le tableau suivant décrit les méthodes et propriétés fournies par la classe XmlReader pour le traitement des éléments. Une fois l'objet XmlReader positionné sur un élément, les propriétés du nœud, telles que Name, reflètent les valeurs de l'élément. Outre les membres décrits ci-dessous, toutes les propriétés et méthodes générales de la classe XmlReader peuvent également être utilisées pour le traitement des éléments. Par exemple, vous pouvez utiliser la méthode ReadInnerXml pour lire le contenu d'un élément.
Remarque |
---|
Ces méthodes incluent un appel initial à la méthode MoveToContent. |
Nom de membre |
Description |
---|---|
Vérifie si le nœud actuel est une balise de début ou d'élément vide. |
|
Vérifie que le nœud actuel est un élément et avance le lecteur jusqu'au nœud suivant. |
|
Vérifie que le nœud actuel est une balise de fin et avance le lecteur jusqu'au nœud suivant. |
|
Lit un élément texte uniquement. |
|
Avance l'objet XmlReader jusqu'à l'élément descendant suivant portant le nom spécifié. |
|
Avance l'objet XmlReader jusqu'à l'élément frère suivant portant le nom spécifié. |
|
Vérifie si l'élément actuel présente une balise d'élément vide. Cette propriété permet de déterminer la différence entre les balises suivantes :
En d'autres termes, la propriété IsEmptyElement signale simplement si l'élément du document source présente ou non une balise d'élément de fin. |
Exemples
Le code suivant lit les éléments à l'aide des méthodes ReadStartElement et ReadString.
Using reader As XmlReader = XmlReader.Create("book3.xml")
' Parse the XML document. ReadString is used to
' read the text content of the elements.
reader.Read()
reader.ReadStartElement("book")
reader.ReadStartElement("title")
Console.Write("The content of the title element: ")
Console.WriteLine(reader.ReadString())
reader.ReadEndElement()
reader.ReadStartElement("price")
Console.Write("The content of the price element: ")
Console.WriteLine(reader.ReadString())
reader.ReadEndElement()
reader.ReadEndElement()
End Using
using (XmlReader reader = XmlReader.Create("book3.xml")) {
// Parse the XML document. ReadString is used to
// read the text content of the elements.
reader.Read();
reader.ReadStartElement("book");
reader.ReadStartElement("title");
Console.Write("The content of the title element: ");
Console.WriteLine(reader.ReadString());
reader.ReadEndElement();
reader.ReadStartElement("price");
Console.Write("The content of the price element: ");
Console.WriteLine(reader.ReadString());
reader.ReadEndElement();
reader.ReadEndElement();
}
Le code suivant traite les éléments à l'aide d'une boucle While.
While reader.Read()
If reader.IsStartElement() Then
If reader.IsEmptyElement Then
Console.WriteLine("<{0}/>", reader.Name)
Else
Console.Write("<{0}> ", reader.Name)
reader.Read() ' Read the start tag.
If reader.IsStartElement() Then ' Handle nested elements.
Console.Write(vbCr + vbLf + "<{0}>", reader.Name)
End If
Console.WriteLine(reader.ReadString()) 'Read the text content of the element.
End If
End If
End While
while (reader.Read()) {
if (reader.IsStartElement()) {
if (reader.IsEmptyElement)
Console.WriteLine("<{0}/>", reader.Name);
else {
Console.Write("<{0}> ", reader.Name);
reader.Read(); // Read the start tag.
if (reader.IsStartElement()) // Handle nested elements.
Console.Write("\r\n<{0}>", reader.Name);
Console.WriteLine(reader.ReadString()); //Read the text content of the element.
}
}
}