Bonjour,
Voilà j'ai une classe score :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
using System;
using System.Collections.Generic;
using System.Text;
namespace _61495_Froger
{
public class Score
{
private int temps;
private String nom;
private String difficulty;
public Score(int t , string n , string d)
{
this.temps = t;
this.nom = n;
this.difficulty = d;
}
}
} |
et une classe scoreList qui doit être serialiser :
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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
|
using System.Collections;
using System.IO;
using System.Xml.Serialization;
using System;
namespace _61495_Froger
{
[Serializable] //Sérialisation de lobjet contactCollection
public class ScoreList
{
[XmlArrayItem(typeof(Score), ElementName = "contact")] //Ici le programme lira les noeuds contact, cest ce qui correspond à un objet Contact
public ArrayList lst_score =new System.Collections.ArrayList(); //contacts est une liste de Contact
public void addContact(Score c)
{
lst_score.Add(c); // Ajoute un contact à la liste
}
public Score get(int n)
{
return (Score)lst_score[n]; // Retourne le contact placé en n position dans le tableau
}
public void ecriture() // Ecriture dans un XML
{
TextWriter flux = new StreamWriter("contact.xml");
XmlSerializer fluxserialise = new
XmlSerializer(typeof(ScoreList));
fluxserialise.Serialize(flux, this);
flux.Close();
}
public void Lecture() // Lecture du fichier XML
{
ScoreList c=new ScoreList();//Nouvelle liste de contacts.
if (File.Exists("contact.xml"))
{
FileStream flux = new FileStream("contact.xml", FileMode.Open, FileAccess.Read);
XmlSerializer fluxserialise = new XmlSerializer(typeof(ScoreList));
c = (ScoreList)fluxserialise.Deserialize(flux);
flux.Close();
}
lst_score=c.lst_score; //contacts est une liste et reçoit la liste des contacts qui résulte de la désérialisation du flux. Si le fichier nexiste pas la liste sera vide
}
}
} |
J'aimerais donc lorsque j'instancie ScoreListe que celà remplisse ma liste de score a l'aide de la méthode lecture.
puis j'aimerais enregistrer la list de score dans le fichier xml...
j'ai un problème il me lève une exception de type :
Une erreur s'est produite lors de la réflexion du type '_61495_Froger.ScoreList'.
sur la ligne :
XmlSerializer fluxserialise = new XmlSerializer(typeof(ScoreList));
Quelqu'un peut m'aider ?
Cordialement,
Guilleret Florian
Partager