物件序列化是將物件(比如類物件)轉換為二進位制資料(位元組流).
反序列化是將二進位制資料還原為物件,和序列化沒有關係.
關鍵字:binaryformatter
序列化/反序列化是為了保持物件的永續性.方便我們的儲存和資訊的交換.
1.要序列化的物件必須比較為[serializable].
2.如果有父類,該型別的父類也必須標記為[serializable].
3.該型別的所有成員也必須標記為[serializable],預設int,string,等基本型別是可以序列化.
4.序列化只會對類中的字段進行序列化.
5.不建議使用自動屬性(每次生成的字段都可能不一樣,影響反序列化).
6.不是所有的物件都可以序列化
person p=new person();
p.age=90;
p.name="唐曾";
using(filestream fs=new filestream("1.txt",filemode.open,fileaccess.write))
步驟:
1.將需要序列化的類標記為可序列化.
2.建立乙個流(using).
3.建立乙個序列化物件
4.呼叫序列化方法進行序列化
反序列化詳
using(filestream fs=new filestream(string path,filemode.open,fileaccess.read))
步驟
1:建立乙個流讀取檔案
2.建立乙個序列化物件
3.呼叫反序列化方法.
二進位制序列化與XML序列化
序列化是將物件狀態轉換為可保持或傳輸的格式的過程。與序列化相對的是反序列化,它將流轉換為物件。這兩個過程結合起來,就使得資料能夠被輕鬆地儲存和傳輸。net 框架提供兩種序列化技術 二進位制序列化保持型別保真度,這對於在應用程式的不同呼叫之間保留物件的狀態很有用。例如,通過將物件序列化到剪貼簿,可在不...
C 之序列化物件(二進位制方式序列化物件)
應用程式有時需要以物件的形式在磁碟上儲存資料,framework有兩個可用的實現方式 一 system.runtime.serialization.formatters.binarry這個命名空間包含了binarryformatter類,它能把物件序列化為二進位制資料,把二進位制資料序列化為物件 二...
示例 二進位制序列化委託
用途 將委託序列化成二進位制,一般用於遠端呼叫方法 示例 1 單元測試 testmethod public void testserializabledelegate s 呼叫原委託 string xmls s.serializebinary myactionact xmls.serializede...