Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Main()
- {
- Ustawienie u = new Ustawienie();
- Ustawienie u_wczytane;
- u.nazwa = "Test";
- u.dane.Add(new Podzialka(1, 2, false));
- u.dane.Add(new Podzialka(2, 4, false));
- u.dane.Add(new Podzialka(3, 3, true));
- u.dane.Add(new Podzialka(4, 2, true));
- Console.WriteLine("Serializacja.");
- Ustawienie.zapiszPlik(u);
- Console.WriteLine("Deserializacja.");
- u_wczytane = Ustawienie.otworzPlik();
- Console.WriteLine(u_wczytane);
- }
- [Serializable()]
- public class Ustawienie : System.Runtime.Serialization.ISerializable
- {
- private static readonly string plik_z_ustawieniami = @"C:\users\1234\Desktop\profile.bin";
- public string nazwa { get; set; }
- public List<Podzialka> dane { get; set; }
- public Ustawienie()
- {
- nazwa = "";
- dane = new List<Podzialka>();
- }
- public Ustawienie(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
- {
- nazwa = info.GetString("nazwa");
- dane = (List<Podzialka>) info.GetValue("podzialka", typeof(List<Podzialka>));
- Console.WriteLine("Zdeserializowano.");
- }
- public virtual void GetObjectData(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
- {
- Console.WriteLine("Serializuje.");
- info.AddValue("nazwa", this.nazwa);
- info.AddValue("podzialka", this.dane);
- }
- public static void zapiszPlik(Ustawienie ust)
- {
- using (FileStream plik = new FileStream(plik_z_ustawieniami, FileMode.OpenOrCreate))
- {
- System.Runtime.Serialization.Formatters.Binary.BinaryFormatter bf = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
- bf.Serialize(plik, ust);
- }
- }
- public static Ustawienie otworzPlik()
- {
- using (FileStream plik = new FileStream(plik_z_ustawieniami, FileMode.Open))
- {
- System.Runtime.Serialization.Formatters.Binary.BinaryFormatter bf = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
- return (Ustawienie)bf.Deserialize(plik);
- }
- }
- }
- [Serializable()]
- public class Podzialka : System.Runtime.Serialization.ISerializable
- {
- public int lp { get; set; }
- public int podzialka { get; set; }
- public bool blokada { get; set; }
- public Podzialka() { }
- public Podzialka(int lp, int podzialka, bool blokada)
- {
- this.lp = lp;
- this.podzialka = podzialka;
- this.blokada = blokada;//.Equals("nie")) ? false : true;
- }
- public Podzialka(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
- {
- lp = info.GetInt32("lp");
- podzialka = info.GetInt32("podzialka");
- blokada = info.GetBoolean("blokada");//.Equals("nie") ? false : true;
- }
- public void GetObjectData(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
- {
- info.AddValue("lp", lp);
- info.AddValue("podzialka", podzialka);
- info.AddValue("blokada", blokada);//.Equals(false) ? "nie" : "tak");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement