0
votes

Analysant une section de XML

J'ai une section de XML que j'essaie de retirer un nom de. Le XML ressemble à ceci: xxx

J'ai besoin de retirer le nom de la ligne xxx

Je peux obtenir une liste de tous les nœuds et lire l'étiquette href, mais rien ci-dessous xxx


0 commentaires

3 Réponses :


0
votes

Si vous voulez seulement obtenir la valeur de nom l'attribut de l'élément str où la valeur de val attribute est "Spread Pression" , alors voici la solution: xxx

system.xml.linq est l'espace de noms pour xdocument


0 commentaires

0
votes

Utilisation de XML LINQ Vous pouvez obtenir un dictionnaire de tous les éléments nommés xxx


0 commentaires

1
votes

Vous pouvez appliquer une expression xpath code> sur le xmlnode code> via la méthode SelectSingLenode code>. XXX PRE>


Exemple complet P>

var data = OpenPLCfile(ofd.FileName, "pointconfig.xml");
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(data);

string xpath = "PointsConfiguration/SoftwarePoints/point";
var nodes = xmlDoc.SelectNodes(xpath);
foreach (XmlNode childrenNode in nodes)
{
    string pointID = childrenNode.Attributes["href"].Value;
    Console.WriteLine(pointID)

    XmlNode nameNode = childrenNode.SelectSingleNode("obj/str[@name='name']/@val");
    string name = nameNode.Value;
    Console.WriteLine(name);
}


1 commentaires

Fonctionne parfaite, merci!