序列化:將對象轉為byte[]然後轉為String。可以將對象轉化為可以轉輸的格式。
public byte[] Serializable_Data(Object obj)
{
IFormatter formatter = new BinaryFormatter();
MemoryStream ms = new MemoryStream();
byte[] b;
formatter.Serialize(ms, obj);
ms.Position = 0;
b = new byte[ms.Length];
ms.Read(b, 0, b.Length);
ms.Close();
return b;
}
/// <summary>
/// 將位元組數組轉為ASCII字元
/// </summary>
public string Serializable_Data(byte[] _data)
{
return Convert.ToBase64String(_data);
}
還原序列化:將string轉為byte[]->object。
public static Object Deserialize_Data(string data)
{
byte[] BytArray = Convert.FromBase64String(data);
IFormatter formatter = new BinaryFormatter();
MemoryStream ms = new MemoryStream();
ms.Write(BytArray, 0, BytArray.Length);
ms.Position = 0;
Object obj= (Object )formatter.Deserialize(ms);
return obj;
}
web service:網站服務
web service可以傳遞一個對象,但必須序列化,然後用戶端引用服務端,執行個體化之後還原序列化.
類序列化之前必須加[Serializable]