public static PersonneSerialisee DeserialiserFichier(string nf) { using (StreamReader sr = new StreamReader(nf)) { XmlSerializer xs = new XmlSerializer(typeof(PersonneSerialisee)); PersonneSerialisee rep = (PersonneSerialisee)xs.Deserialize(sr); sr.Close(); return(rep); } }
static void Main(string[] args) { #region PersonneSerialisee PersonneSerialisee ps = new PersonneSerialisee(1, "Winch", "Largo", new DateTime(1975, 07, 15)); ps.Lst.Add("Danitza"); ps.Lst.Add("Charity"); ps.Lst.Add("Marilyn"); ps.SerialiserFichier("essai.xml"); PersonneSerialisee psBis = PersonneSerialisee.DeserialiserFichier("essai.xml"); Console.WriteLine("{0} {1} ({2})", psBis.Prenom, psBis.Nom, psBis.ID); #endregion #region Personne Personne p = new Personne(1, "Winch", "Largo", new DateTime(1975, 07, 15)); p.Lst.Add("Danitza"); p.Lst.Add("Charity"); p.Lst.Add("Marilyn"); p.SerialiserFichier("essaibis.xml"); Personne pBis = Personne.DeserialiserFichier("essaibis.xml"); Console.WriteLine("{0} {1} ({2})", pBis.Prenom, pBis.Nom, pBis.ID); p.SerialiserToutFichier("essaiter.xml"); Personne pTer = Personne.DeserialiserToutFichier("essaiter.xml"); Console.WriteLine("{0} {1} ({2})", pTer.Prenom, pTer.Nom, pTer.ID); #endregion #region Générique UtilitaireSerialisation.SerialiserFichier <Personne>("essai4.xml", p); Personne pQuat = UtilitaireSerialisation.DeserialiserFichier <Personne>("essai4.xml"); Console.WriteLine("{0} {1} ({2})", pQuat.Prenom, pQuat.Nom, pQuat.ID); List <Personne> LPer = new List <Personne>(); LPer.Add(p); LPer.Add(pBis); LPer.Add(pTer); LPer.Add(pQuat); UtilitaireSerialisation.SerialiserFichier <List <Personne> >("essai5.xml", LPer); List <Personne> Lp2 = UtilitaireSerialisation.DeserialiserFichier <List <Personne> >("essai5.xml"); foreach (var v in Lp2) { Console.WriteLine("{0} {1} ({2})", v.Prenom, v.Nom, v.ID); } #endregion Console.ReadLine(); }