Structure fichier xml

suethi75 Messages postés 101 Date d'inscription mercredi 5 novembre 2008 Statut Membre Dernière intervention 31 août 2009 - 1 juin 2009 à 17:27
suethi75 Messages postés 101 Date d'inscription mercredi 5 novembre 2008 Statut Membre Dernière intervention 31 août 2009 - 2 juin 2009 à 08:11
bonjour;

Je met des données dans un fichier xml, mon fichier xml est de cette forme là:

<?xml version="1.0" encoding="UTF-8"?>
<festivals>
  <Festival>
    <Nom_festival>titi</Nom_festival>
    <Date_debut>01/06/2009</Date_debut>
    <Date_fin>01/06/2009</Date_fin>
    <Concerts>
      <Nom_concert>best of</Nom_concert>
      <Date_concert>29/05/2009</Date_concert>
      <Heure_concert>10:00</Heure_concert>
      <Duree_concert>120 min</Duree_concert>
      <Lieu_concert>PARIS</Lieu_concert>
      <Salle_concert>ZENITH</Salle_concert>
      <Genre_concert>pop</Genre_concert>
    </Concerts>
  </Festival>
</festivals>

Cependant moi je souhaiterai pouvoir ajouter autant de concert que je le souhaite pour un même festival. Je ne sais pas comment faire.

Merci pour votre aide

4 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
1 juin 2009 à 17:59
Bonjour,

En utilisant un élément Concert, par exemple.

<?xml version="1.0" encoding="UTF-8"?>
<festivals>
  <Festival>
    <Nom_festival>titi</Nom_festival>
    <Date_debut>01/06/2009</Date_debut>
    <Date_fin>01/06/2009</Date_fin>
    <Concerts>
      <Concert>
        <Nom_concert>best of</Nom_concert>
        <Date_concert>29/05/2009</Date_concert>
        <Heure_concert>10:00</Heure_concert>
        <Duree_concert>120 min</Duree_concert>
        <Lieu_concert>PARIS</Lieu_concert>
        <Salle_concert>ZENITH</Salle_concert>
        <Genre_concert>pop</Genre_concert>
      </Concert>
      <Concert>
        <Nom_concert>best of</Nom_concert>
        <Date_concert>29/05/2009</Date_concert>
        <Heure_concert>10:00</Heure_concert>
        <Duree_concert>120 min</Duree_concert>
        <Lieu_concert>PARIS</Lieu_concert>
        <Salle_concert>ZENITH</Salle_concert>
        <Genre_concert>pop</Genre_concert>
      </Concert>
    </Concerts>
  </Festival>
</festivals>

/*
coq
MVP Visual C#
CoqBlog
*/
0
suethi75 Messages postés 101 Date d'inscription mercredi 5 novembre 2008 Statut Membre Dernière intervention 31 août 2009
1 juin 2009 à 18:06
oui mais je voudrais savoir comment cela se traduit avec le code, moi j'ai fais une procédure qui enregistre pour un festival un concert mais je ne peux pas mettre plusieurs concerts pour un festival.

Voici mon code:

 public void ecrire_xmlFestival(programme ceProgramme)
        {
             programme programmeChoisi = new programme();

                //Initialisation des noeuds et des éléments
                XmlDocument xmlFestival = new XmlDocument();

                XmlElement elementFestival;
                XmlElement elementNom_festival;
                XmlElement elementDate_debut;
                XmlElement elementDate_fin;

                XmlElement elementConcertChoisi;
                XmlElement elementNom_concert;
                XmlElement elementDate_concert;
                XmlElement elementHeure_concert;
                XmlElement elementDuree_concert;
                XmlElement elementLieu_concert;
                XmlElement elementSalle_concert;
                XmlElement elementGenre_concert;
               
               

                // Chargement du fichier xml qui se situe dans le BIN DEBUG
                xmlFestival.Load(@".\listFestival.xml");
               

                //Création des balises
                elementFestival = xmlFestival.CreateElement("Festival");

                elementNom_festival = xmlFestival.CreateElement("Nom_festival");
                elementNom_festival.InnerText = nomFestival;

                elementDate_debut = xmlFestival.CreateElement("Date_debut");
                elementDate_debut.InnerText = dateDebut;

                elementDate_fin = xmlFestival.CreateElement("Date_fin");
                elementDate_fin.InnerText = dateFin;

                elementConcertChoisi = xmlFestival.CreateElement("Concerts");

                elementNom_concert = xmlFestival.CreateElement("Nom_concert");
                elementNom_concert.InnerText = nomConcert;

                elementDate_concert = xmlFestival.CreateElement("Date_concert");
                elementDate_concert.InnerText = ceProgramme.DateConcert;

                elementHeure_concert = xmlFestival.CreateElement("Heure_concert");
                elementHeure_concert.InnerText = ceProgramme.Heure;

                elementDuree_concert = xmlFestival.CreateElement("Duree_concert");
                elementDuree_concert.InnerText = dureeConcert;

                elementLieu_concert = xmlFestival.CreateElement("Lieu_concert");
                elementLieu_concert.InnerText = ceProgramme.LieuSpectacle;

                elementSalle_concert = xmlFestival.CreateElement("Salle_concert");
                elementSalle_concert.InnerText = ceProgramme.SalleSpectacle;

                elementGenre_concert = xmlFestival.CreateElement("Genre_concert");
                elementGenre_concert.InnerText = genreConcert;

              
                // On ajoute la valeur à l'élément
                elementFestival.AppendChild(elementNom_festival);
                elementFestival.AppendChild(elementDate_debut);
                elementFestival.AppendChild(elementDate_fin);

                elementConcertChoisi.AppendChild(elementNom_concert);
                elementConcertChoisi.AppendChild(elementDate_concert);
                elementConcertChoisi.AppendChild(elementHeure_concert);
                elementConcertChoisi.AppendChild(elementDuree_concert);
                elementConcertChoisi.AppendChild(elementLieu_concert);
                elementConcertChoisi.AppendChild(elementSalle_concert);
                elementConcertChoisi.AppendChild(elementGenre_concert);
               

                // à expliquer!!!!!!!!
                XmlNode node = xmlFestival.DocumentElement.AppendChild(elementFestival);
                node.AppendChild(elementConcertChoisi);

                // On sauvegarde le fichier xml
                xmlFestival.Save(@".\listFestival.xml");

                // écrire la suite pour insérer dans la collection tous les programmes d'un concert
                // insérer tous les programmes concernant le festival
        }
        #endregion;

Merci pour ton aide
0
cs_Robert33 Messages postés 834 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 14 janvier 2017 33
1 juin 2009 à 18:32
Re, suethi75

Tu cross-post la même question.
as-tu regardé l'exemple que je t'ai fourni dans un autre de tes post?

C# is amazing, enjoy it!
0
suethi75 Messages postés 101 Date d'inscription mercredi 5 novembre 2008 Statut Membre Dernière intervention 31 août 2009
2 juin 2009 à 08:11
ok, merci je le teste tout à l'heure, je te tiens au courant. Merci en tout cas.
0
Rejoignez-nous