Problème desérialisation

Résolu
Kbitnik Messages postés 125 Date d'inscription mercredi 15 novembre 2000 Statut Membre Dernière intervention 2 mars 2006 - 1 févr. 2006 à 09:35
Kbitnik Messages postés 125 Date d'inscription mercredi 15 novembre 2000 Statut Membre Dernière intervention 2 mars 2006 - 1 févr. 2006 à 10:23
Bonjour à tous,
j'ai encore une fois un petit problème cette fois-ci au niveau d'une deserialisation, je m'explique :
j'ai une classe colis, j'aimerai effectuer une sauvegarde de cet objet dans un fichier, donc pour cela j'ai crée une classe outil avec comme méthode de classe, serialiser et deserialiser, comme ceci :

public
static void Serialisation(Object o)
{
FileStream fs = new FileStream("aa", FileMode.OpenOrCreate);
BinaryFormatter sf = new BinaryFormatter();
sf.Serialize(fs, o);
fs.Close();
}


public static Object Deserialisation ()
{
FileStream fs = new FileStream("aa", FileMode.Open);
BinaryFormatter sf = new BinaryFormatter();
Object o = sf.Deserialize(fs);
fs.Close();
return o;

}

Donc quand je crée mon objet je sérialise il me crée bien un fichier mais quand je le désérialise comme ceci, cela m'affiche une erreur impossible de convertir le type Object en colis.
colis ac = outil.Deserialisation();

Je ne sais pas comment faire.
Merci d'avance !



Kbitnik

8 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
1 févr. 2006 à 09:47
normal : colis ac = (colis)outil.Deserialisation();

C# ne fait de conversion implicite.

Sébastien FERRAND
[MVP Visual C#]
3
Kbitnik Messages postés 125 Date d'inscription mercredi 15 novembre 2000 Statut Membre Dernière intervention 2 mars 2006
1 févr. 2006 à 09:50
Ah ok, et donc ce que je faisais avec SoapFormatter, ça aurait fonctionné ?



Kbitnik
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
1 févr. 2006 à 09:54
je n'ai pas vu ce que tu faisais avec SoapFormatter... sorry

Sébastien FERRAND
[MVP Visual C#]
0
Kbitnik Messages postés 125 Date d'inscription mercredi 15 novembre 2000 Statut Membre Dernière intervention 2 mars 2006
1 févr. 2006 à 09:56
Nan mais si au lieu d'utiliser le binaryformatter, j'aurai utilisé le SoapFormatter avec le xml, ça fonctionnerait ?


Kbitnik
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
1 févr. 2006 à 10:10
oui :)

Sébastien FERRAND
[MVP Visual C#]
0
Kbitnik Messages postés 125 Date d'inscription mercredi 15 novembre 2000 Statut Membre Dernière intervention 2 mars 2006
1 févr. 2006 à 10:17
ah, ok et une derniere chose si ça te dérange pas, en faite je veux sauvegarder un objet par jour pour 3 semaines, et quand je dépasse 3 semaines je dépasse l'objet le plus vieux et ajoute le nouvel objet. Donc j'ai 2 questions, peut-on sérialiser un tableau dynamique d'objets ? et la seconde est comment fait on pour désérialiser plusieurs objets d'un fichier ?

Je suis désolé, mais j'ai jamais trop touché la sérialisation, c'est pour ça que je suis un peu perdu.



Kbitnik
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
1 févr. 2006 à 10:21
tu peux sérialiser une ArrayList... et si tu es en .net2, une List<>

Sébastien FERRAND
[MVP Visual C#]
0
Kbitnik Messages postés 125 Date d'inscription mercredi 15 novembre 2000 Statut Membre Dernière intervention 2 mars 2006
1 févr. 2006 à 10:23
Merci beaucoup sebmafate !



Kbitnik
0