C#中的序列化和反序列化
生活随笔
收集整理的這篇文章主要介紹了
C#中的序列化和反序列化
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
序列化:是將對象的狀態(tài)存儲到特定存儲介質(zhì)的過程,也可以說是將對象狀態(tài)轉換為可保持或傳輸?shù)母袷降倪^程。
上面的解釋是官方定義,大白話解釋就是,將對象以二進制的方式存儲在文件中,如果簡簡單單的將一些數(shù)據(jù)或者內(nèi)容存儲到文件中的話,很好實現(xiàn),直接使用IO就可以,但是對象可就不一樣了,我們可以通過序列化來實現(xiàn),下面就展示一個序列化的案例:
首先新建一個Student類,需要注意的是,在類的上方要標識[Serializable],以表示該類可支持序列化操作。
接下來寫一個測試類實現(xiàn)一下序列化:
static void TestXu() {List<Student> slist = new List<Student>();Student stu1 = new Student("劉世豪",12,"男");Student stu2 = new Student("李宏洋", 18, "男");Student stu3 = new Student("鐘立琦",19,"男");slist.Add(stu1);slist.Add(stu2);slist.Add(stu3);//開始序列化using(FileStream fs = new FileStream(@"d:/test/test.txt",FileMode.Create)){BinaryFormatter bf = new BinaryFormatter();bf.Serialize(fs,slist);Console.WriteLine("序列化成功");}}執(zhí)行一下,運行結果不出意外的話是:序列化成功,但是提醒你不要去看生成的那個文件,不信的話你就去看看。
反序列化:顧名思義就是與序列化相反,也就是從文件中將對象在還原回來。
下面是代碼案例:
輸出的運行結果:
劉世豪
李宏洋
鐘立琦
這就是序列化和反序列化操作的案例。
**
歡迎關注微信公眾號:《雄雄的小課堂》呦。
**
總結
以上是生活随笔為你收集整理的C#中的序列化和反序列化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 优秀学生专栏——董超
- 下一篇: 唯物主义哲学的三种基本形态 唯物主义哲学