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

2022-03-12 22:58:43 字數 1051 閱讀 8044

說明:本文演示將類序列化後寫入記事本並從記事本讀取反序列化為物件

1.首先建立乙個類,同時類必須標識為serializable,如下:

[serializable]

public

class

region

public string region_id

public string region_name

public string parent_region_id

}

2.序列化**如下

//

定義物件

region region = new

region()

;byte

bytes;

//序列化並寫入記憶體流

using (memorystream ms = new

memorystream())

//將記憶體流寫入檔案

filestream fs = new filestream("

aa.txt

", filemode.openorcreate);

fs.write(bytes,

0, bytes.length);

fs.close();

3.反序列化**如下

//

將檔案讀取為檔案流並寫入byte陣列

filestream fs = new filestream("

aa.txt

", filemode.openorcreate);

var length=convert.toint32(fs.length);

byte bytes = new

byte

[length];

fs.read(bytes,

0, length);

//將byte陣列寫入記憶體流

using (memorystream ms = new

memorystream(bytes))

說明:經本人測試沒有任何問題

序列化和反序列化 C 序列化與反序列化。

序列化介紹 把物件用一種新的格式來表示。系列化只序列化資料。序列化不建議使用自動屬性 為什麼要序列化 將乙個複雜的物件轉換流,方便儲存與資訊交換。class program class person public int age 二進位制序列化 就是將物件變成流的過程,把物件變成byte class...

C 類的序列化和反序列化

在很多通訊或者資料儲存的過程中,都需要序列化和反序列化的過程。在c 中,如果想要進行自定義類的序列化,只需要簡單地在定義類的時候新增serializable標籤即可。如 serializable publicclassperson 經常用到的序列化方式有兩種 二進位制和xml,分為由system.r...

C 序列化和反序列化

binaryserialize serialize new binaryserialize book book serialize.deserialize book.write 3 測試用的 binaryserialize類 using system using system.collections...