序列化类对象

序列化准备:

序列化的对象添加[System.Serializable]特性
注意:如果对象中有其他类的对象或者结构体 也需要给它们加特性

方式1

  1. using System.IO;
    using System.Runtime.Serialization.Formatters.Binary;
    MemoryStream内存流、BinaryFormatter二进制格式器类
    BinaryFormatte类的Serialize方法可以将类对象序列化
    通过内存流可以获取类对象的字节数组
  2. 实例
using (MemoryStream ms = new MemoryStream())
{
    //二进制格式器
    BinaryFormatter binary = new BinaryFormatter();
    //将类对象序列化放入内存流中
    binary.Serialize(ms,类对象);
    //通过内存流得到类对象的字节数组
    byte[] bytes = ms.GetBuffer();
    //字节数组写入到文件中
    File.WriteAllBytes(Application.dataPath+"/class.test",bytes);    
    ms.Close();
    ms.Dispose();
}

方式2

将类对象直接写入到文件流中

 using (FileStream fileStream=File.Open(Application.dataPath+"/class1.test",FileMode.OpenOrCreate,FileAccess.Write))
 {
     BinaryFormatter binary = new BinaryFormatter();
     binary.Serialize(fileStream,类对象);
     fileStream.Flush();
     fileStream.Close();
     fileStream.Dispose();
 }

版权声明:本文为weixin_43796392原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。