Bonjour à tous,
dans une boucle foreach je rencontre un problème assez bizarre
dans ma boucle j'essaie de fermer un élément xml qui est déjà ouvert à l'extérieure et c# me crie dessus en me disantmais pourtant je prends mes précautions en l'ouvrant et en le fermant aux bons endroit. mon problème ressemble à ca :Le jeton StartElement dans l'état Epilog générera un document XML non valide.
est-ce que, par hasard, quelqu'un aurait déjà rencontré un tel problème pour m'indiquer la sortie s'il vous plait????
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 XmlTextWriter xmlWriter = new XmlTextWriter(@"c:\temp\file.xml", new UTF8Encoding()); xmlWriter.Formatting = Formatting.Indented; xmlWriter.Indentation = 1; xmlWriter.IndentChar = (char)0x0009; xmlWriter.WriteStartDocument(); xmlWriter.WriteStartElement("parent"); //Ouverture du premier élément. int i = 1; foreach (string chaine in chaines){ //...Création d'éléments if (i == 4){ i = 1; xmlWriter.WriteEndElement(); //Fermeture du premier élément mais aussi, évetuellement, l'élément intermédiaire. xmlWriter.WriteStartElement("parent");//Ouverture d'un élément intermédiaire et c'est ici qu'il plante. }else{ i++; } } xmlWriter.WriteEndElement(); //Fermeture du dernier élément intermiédiaire. xmlWriter.WriteEndDocument(); xmlWriter.Close();
merciiii et bonne soirée.
Partager