try
{
#region "序列化"
MemoryStream ms = new MemoryStream();
Image img = Image.FromFile(@"G:/Windows/Web/Wallpaper/Windows/img0.jpg");
BinaryFormatter bi = new BinaryFormatter();
bi.Serialize(ms, img);
//写字符
string sstr=Convert.ToBase64String(ms.ToArray(),Base64FormattingOptions.InsertLineBreaks);
//写文件
//File.WriteAllBytes(@"c:/aa.txt", ms.ToArray());
ms.Flush();
ms.Close();
#endregion
#region "反序列化"
//读文件
//byte[] arrbyte = File.ReadAllBytes(@"c:/aa.txt");
//读字符
char[] arrchar=sstr.ToCharArray();
byte[] arrbyte = Convert.FromBase64CharArray (sstr.ToCharArray(),0,arrchar.Length );
BinaryFormatter bi2 = new BinaryFormatter();
MemoryStream ms2 = new MemoryStream(arrbyte);
Image img2 = (Image)bi2.Deserialize(ms2);
this.BackgroundImage = img2;
ms2.Flush();
ms2.Close();
#endregion
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}