国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

asp.net 序列化and反序列化演示

2024-07-10 12:39:39
字體:
來源:轉載
供稿:網友
什么是序列化?
---.net的運行時環境用來支持用戶定義類型的流化的機制。它是將對象實例的狀態存儲到存儲媒體的過程。在此過程中,先將對象的公共字段和私有字段以及類的名稱(包括類所在的程序集)轉換為字節流,然后再把字節流寫入數據流。在隨后對對象進行反序列化時,將創建出與原對象完全相同的副本。
序列化的目的:
1、以某種存儲形式使自定義對象持久化;
2、將對象從一個地方傳遞到另一個地方。
實質上序列化機制是將類的值轉化為一個一般的(即連續的)字節流,然后就可以將該流寫到磁盤文件或任何其他流化目標上。而要想實際的寫出這個流,就要使用那些實現了IFormatter接口的類里的Serialize和Deserialize方法。
private bool SerializeStudent(object obj)
{
FileDialog fd = new SaveFileDialog();
if (fd.ShowDialog() == DialogResult.OK | fd.FileName != null)
{
FileStream fs = new FileStream(fd.FileName, FileMode.Create, FileAccess.Write);
System.Xml.Serialization.XmlSerializer xmlSer = new System.Xml.Serialization.XmlSerializer(obj.GetType());
xmlSer.Serialize(fs, obj);
fs.Close();
return true;
}
else
{
return false;
}
}
private object DeSerializeStudent(object obj)
{
FileDialog fd = new OpenFileDialog();
object objStd;
if (fd.FileName != null | fd.ShowDialog() == DialogResult.OK)
{
FileStream fs = new FileStream(fd.FileName, FileMode.Open, FileAccess.Read, FileShare.Read);
System.Xml.Serialization.XmlSerializer xmlSer = new System.Xml.Serialization.XmlSerializer(obj.GetType());
objStd = xmlSer.Deserialize(fs);
fs.Close();
return objStd;
}
else
{
return null;
}

}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 五华县| 寻乌县| 喜德县| 思茅市| 平昌县| 蒙阴县| 鄯善县| 南涧| 双峰县| 陆丰市| 舟山市| 柳河县| 浑源县| 石景山区| 苏尼特左旗| 额济纳旗| 左云县| 沽源县| 富宁县| 巨鹿县| 沂水县| 大方县| 垣曲县| 安溪县| 涪陵区| 苏尼特左旗| 宁晋县| 宝坻区| 阳曲县| 怀远县| 沧州市| 定边县| 习水县| 南岸区| 敖汉旗| 平舆县| 微山县| 武鸣县| 嘉禾县| 石狮市| 鹿泉市|