天天看點

C#中的序列化和反序列化

序列化:是将對象的狀态存儲到特定存儲媒體的過程,也可以說是将對象狀态轉換為可保持或傳輸的格式的過程。

上面的解釋是官方定義,大白話解釋就是,将對象以二進制的方式存儲在檔案中,如果簡簡單單的将一些資料或者内容存儲到檔案中的話,很好實作,直接使用io就可以,但是對象可就不一樣了,我們可以通過序列化來實作,下面就展示一個序列化的案例:

首先建立一個student類,需要注意的是,在類的上方要辨別[serializable],以表示該類可支援序列化操作。

接下來寫一個測試類實作一下序列化:

執行一下,運作結果不出意外的話是:序列化成功,但是提醒你不要去看生成的那個檔案,不信的話你就去看看。

反序列化:顧名思義就是與序列化相反,也就是從檔案中将對象在還原回來。

下面是代碼案例:

輸出的運作結果:

劉世豪

李宏洋

鐘立琦

這就是序列化和反序列化操作的案例。

**