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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
XmlDocument XmlDoc = new XmlDocument();
XPathNavigator Navigator;
XPathNodeIterator Nodes;
Int32 ID;
string fichier = "Membres.xml";
int i;
XmlDoc.Load(fichier);
Navigator = XmlDoc.CreateNavigator();
ExpXPath = "//MaxID";
Nodes = Navigator.Select(Navigator.Compile(ExpXPath));
Nodes.MoveNext();
/* On place l'ID le plus élevé du document dans la variable ID */
ID = Nodes.Current.ValueAsInt;
/* On incrémente la valeur du noeud MaxID car une fois notre nouveau noeud
* créé, l'ID le plus élevé du document sera aussi incrémenté */
Nodes.Current.SetValue((ID + 1).ToString());
/* On se place sur le noeud ayant l'ID le plus élevé */
ExpXPath = "//Membre[@id='" + ID.ToString() + "']";
Nodes = Navigator.Select(Navigator.Compile(ExpXPath));
if (Nodes.Count != 0)
{
Nodes.MoveNext();
/* On crée le noeud principal (Membre). */
Nodes.Current.InsertElementAfter("", "Membre", "", "");
/* On se place sur le noeud ainsi créé. */
Nodes.Current.MoveToNext(XPathNodeType.Element);
ID++; /* On incrémente ID pour que sa valeur soit identique à celle se
* trouvant dans le noeud MaxID. */
/* Encodage des données */
Nodes.Current.CreateAttribute("", "id", "", ID.ToString());
Nodes.Current.AppendChildElement("", "Prenom", "", Customer.m_prenomMembre);
Nodes.Current.AppendChildElement("", "Nom", "", Customer.m_nomMembre);
for (i = 1; i <= 53; i++)
{
Nodes.MoveNext();
Nodes.Current.InsertElementAfter("","Semaine","","");
Nodes.Current.MoveToNext(XPathNodeType.Element);
Nodes.Current.CreateAttribute("","ids","",Convert.ToString(i));
Nodes.Current.AppendChildElement("","Lundi","","Null");
Nodes.Current.AppendChildElement("", "Mardi", "","Null");
Nodes.Current.AppendChildElement("", "Mercredi", "","Null");
Nodes.Current.AppendChildElement("", "Jeudi", "","Null");
Nodes.Current.AppendChildElement("", "Vendredi", "","Null");
Nodes.Current.AppendChildElement("", "Samedi", "","Null");
Nodes.Current.AppendChildElement("", "Dimanche", "","Null");
}
XmlDoc.Save("Membres.xml");
return true;
} |