Bonjour
J'ai du mal à faire la somme de plusieurs nœud ayant le même nom dans un même fichier XML et j'essaye d'écrire ma variable dans un fichier texte pour contrôler la valeur mais ça ne marche pas non plus.
Je précise que je suis un gros débutant (5 jours d'auto-apprentissage) soyez indulgent merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
private long income = 0;
.
.
.
            string tlist = "http://monurlxml";
            XmlDocument list1 = new XmlDocument();
            list1.Load(tlist);
            XmlNodeList elementsByTagName = list1.DocumentElement.GetElementsByTagName("MonNoeud");
            for (int i = 0; i < elementsByTagName.Count; i++)
            {
                income = income + Convert.ToInt64(elementsByTagName[i].InnerXml.ToString());                
 
                StreamWriter writer;
                string directoryName = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName);
                string Tincome = directoryName + @"\settings\Tincome.txt";
                if (!System.IO.File.Exists(Tincome))
                {
                    using (writer = System.IO.File.CreateText(Tincome))
                    {
                    }
                    using (StreamWriter writer2 = new StreamWriter(Tincome))
                    {
                        writer2.Write(income);
                    }
                }
            }
Donc ce que j'essaye de faire c'est compter le nombre de noeud s'appellant "MonNoeud" pour faire une boucle égale à ce nombre qui incrémente une variable "income" des valeurs comprise dans chaque <MonNoeud></MonNoeud>
L'écriture de income dans un fichier texte c'est juste pour vérifier que la somme fonctionne, je l'enlèverai apres.

ex:
<xml>
<MonNoeud>10</MonNoeud>
<MonNoeud>5</MonNoeud>
<MonNoeud>6</MonNoeud>
<MonNoeud>2</MonNoeud>
<MonNoeud>8</MonNoeud>
<MonNoeud>3</MonNoeud>
</xml>

income = 34

Merci