public static PersonneSerialisable DeserialiserFichier(string sFichier) { using (StreamReader sr = new StreamReader(sFichier)) //Lis les données dans le fichier pour les transmettre à une classe { XmlSerializer xs = new XmlSerializer(typeof(PersonneSerialisable)); PersonneSerialisable oTmp = (PersonneSerialisable)xs.Deserialize(sr); //Serialiseur renvoie n'importe quoi, un cast est nécessaire pour récupérer nos données personneSerialisable sr.Close(); return(oTmp); //renvoie les données récupérée } }
private void bClassePreparer_Click(object sender, EventArgs e) { PersonneSerialisable ps = new PersonneSerialisable(1, "Largo", "Winch", new DateTime(1975, 7, 15)); ps.Lst.Add("Danitza"); ps.Lst.Add("Charity"); ps.Lst.Add("Marylin"); ps.SerialiserFichier("ClassePreparee.xml"); // Nom de sFichier, tout le contenu de ps est envoyé pour être sérialiser PersonneSerialisable psbis = PersonneSerialisable.DeserialiserFichier("ClassePreparee.xml"); //Récupére les infos désérialiser MessageBox.Show("Vérification : " + psbis.Prenom + " " + psbis.Nom + " (" + psbis.ID.ToString() + ")"); //Affiche des variables for (int i = 0; i < psbis.Lst.Count; i++) { MessageBox.Show("Conquête " + (1 + i).ToString() + " : " + psbis.Lst[i]); //Affiches les éléments de la liste } }