vladvonjim
Messages postés1Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention27 octobre 2011
-
27 oct. 2011 à 11:40
BunoCS
Messages postés15426Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention28 novembre 2023
-
27 oct. 2011 à 14:06
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.
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);
}
}
}
BunoCS
Messages postés15426Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention28 novembre 2023102 27 oct. 2011 à 14:06
Hello,
Qu'entends par "faire la somme de noeuds xml"? En soi, cela ne veut rien dire, mais j'imagine que tes balises xml ont des valeurs de type entier ou flottant et donc, tu aimerais en faire la somme.
Right?
De plus, on sent quelque copier/coller non maitrisé dans ton code...
Voici ce que je te propose (non testé):
private long income = 0;
string tlist = "http://monurlxml";
XmlDocument list1 = new XmlDocument();
list1.Load(tlist);
XmlNodeList nodeList = xml.SelectNodes("/baliseParent/baliseVoulue"); // à toi d'indiquer le bon "chemin"
foreach (XmlNode node in nodeList)
{
income += Convert.ToInt32(node.InnerText); // attention, vérifie le type que tu as: int, float,...
}
@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...