[VB.NET]Pourquoi ma sérialisation binaire d'ArrayList ne fonctionne pas ?
Bonjour,
j'essaie de sérialiser un ArrayList d'objets. Mais lorsque je désérialise, ça ne marche pas. Je me retrouve avec des objets null.
Voici le code pour la sérialisation :
Code:
1 2 3 4 5 6 7 8
|
Dim liste AsNew ArrayList
liste.Add(poste1)
liste.Add(poste2)
Dim s As Stream = File.Create("postes.bin")
Dim b As BinaryFormatter = New BinaryFormatter
b.Serialize(s, liste)s.Close()
|
et la désérialisation :
Code:
1 2 3 4 5 6 7 8 9 10
|
Dim s As Stream
Dim b As BinaryFormatter
s = New FileStream("postes.bin", FileMode.Open, FileAccess.Read, FileShare.Read)
b = New BinaryFormatter
Dim liste As ArrayList = DirectCast(b.Deserialize(s), ArrayList)
poste1 = DirectCast(liste.Item(0), Poste)
poste2 = DirectCast(liste.Item(1), Poste)
s.Close()
|
C'est par la suite quand j'utilise la variable poste1 (par ex) que l'erreur apparait.
Quelqu'un voit-il l'erreur?