tisdag 31 mars 2009

DEVTIPS #3 Serialize

Serializering av data:
string str = "Programmering är roligt!";
BinaryFormatter bf = new BinaryFormatter();
MemoryStream ms1 = new MemoryStream();
bf.Serialize(ms1, str);
ms1.Position = 0; // Väldigt viktigt att nollställa positionen för streamen.
byte[] serializedString = ms1.ToArray();
ms1.Close();

MemoryStream ms2 = new MemoryStream(serializedString, 0, serializedString.Length);
string s = (string)bf.Deserialize(ms2);
ms2.Close();
MessageBox.Show(s);

Det går utmärkt att serialisera ner egna objekt till en databas för att hålla reda på mer komplexa states t ex. Kom bara ihåg att i klassdefenitionen att lägga till attributen [Serializable] före klassen:

    [Serializable]
    public class MyClass {
    }


Inga kommentarer: