Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.Linq;
- using System.Runtime.Serialization;
- using System.Runtime.Serialization.Formatters.Binary;
- using System.Text;
- using System.Threading.Tasks;
- namespace ConsoleApp1
- {
- [Serializable()]
- public class MojaKlasa
- {
- public int A = -1;
- public static int B = 0;
- public MojaKlasa() { A += 5; }
- [OnSerializing()]
- internal void OnSerializingMethod(StreamingContext context)
- {
- A += 2;
- B += A;
- Console.WriteLine("OnSerializingMethod: {0} {1}", A, B);
- }
- [OnSerialized()]
- internal void OnSerializedMethod(StreamingContext context)
- {
- A += 3;
- B -= A;
- Console.WriteLine("OnSerializedMethod: {0} {1}", A, B);
- }
- [OnDeserializing()]
- internal void OnDeserializingMethod(StreamingContext context)
- {
- A += 4;
- B += A;
- Console.WriteLine("OndDeSerializingMethod: {0} {1}", A, B);
- }
- [OnDeserialized()]
- internal void OnDeserializedMethod(StreamingContext context)
- {
- A += 5;
- B -= A;
- Console.WriteLine("OndDeSerializedMethod: {0} {1}", A, B);
- }
- }
- class Test
- {
- static void Main(string[] args)
- {
- MojaKlasa obj = new MojaKlasa();
- BinaryFormatter formater = new BinaryFormatter();
- FileStream fs = null;
- try
- {
- fs = new FileStream("dane.dat", FileMode.Create);
- formater.Serialize(fs, obj);
- }
- finally
- {
- if (fs != null)
- fs.Close();
- }
- try
- {
- fs = new FileStream("dane.dat", FileMode.Open);
- obj = (MojaKlasa)formater.Deserialize(fs);
- }
- finally
- {
- if (fs != null)
- fs.Close();
- }
- Console.ReadKey();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement