using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.Serialization.Formatters.Binary; using System.Runtime.Serialization; using System.IO; using System.Runtime.Serialization.Formatters.Soap; namespace 직렬화데모 { class Program { static void Main(string[] args) { //Man man = new Man("홍길동", 29); //직렬화 대상 개체 //FileStream fs = new FileStream("man.txt",FileMode.Create); //직렬화 대상 매체 //BinaryFormatter bf = new BinaryFormatter(); //포멧터 //bf.Serialize(fs, man); //직렬화 수행 //fs.Close(); //FileStream fs2 = new FileStream("man.txt", FileMode.Open);//대상 매체 //BinaryFormatter bf2 = new BinaryFormatter(); //포멧터 //Man man2 = bf2.Deserialize(fs2) as Man; //역직렬화 //fs2.Close(); //Console.WriteLine(man2); Man man = new Man("홍길동", 29); //직렬화 대상 개체 FileStream fs = new FileStream("man.xml", FileMode.Create); //직렬화 대상 매체 SoapFormatter sf = new SoapFormatter(); //포멧터 sf.Serialize(fs, man); //직렬화 수행 fs.Close(); FileStream fs2 = new FileStream("man.xml", FileMode.Open);//대상 매체 SoapFormatter sf2 = new SoapFormatter(); //포멧터 Man man2 = sf2.Deserialize(fs2) as Man; //역직렬화 fs2.Close(); Console.WriteLine(man2); } } }