public abstract bool Prepare(StreamSerializer ser);
protected virtual void LoadSubtypeData(StreamSerializer stream) { }
public void Save(Stream stream) { var ser = new StreamSerializer(stream); Save(ser); }
public abstract void Save(StreamSerializer stream);
/// <summary> /// json字符串转对象,序列化 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="json"></param> /// <returns></returns> public virtual T JSONStringToObject <T>(string json) { return(StreamSerializer.JSONStringToObject <T>(json)); }
public void Load(Stream stream) { var ser = new StreamSerializer(stream); Load(ser); }
/// <summary> /// 对象转json字符串 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="obj"></param> /// <returns></returns> public virtual string JSONObjectToString <T>(T obj) { return(StreamSerializer.JSONObjectToString <T>(obj)); }
/// <summary> /// 对象直接转json的byte[] /// </summary> /// <typeparam name="T"></typeparam> /// <param name="obj"></param> /// <returns></returns> public virtual byte[] JSONObjectToBytes <T>(T obj) { return(StreamSerializer.JSONObjectToBytes <T>(obj)); }
/// <summary> /// json字符串转byte[] /// </summary> /// <param name="json"></param> /// <returns></returns> public virtual byte[] JSONStringToBytes(string json) { return(StreamSerializer.JSONStringToBytes(json)); }
/// <summary> /// byte[]转json字符串 /// </summary> /// <param name="json"></param> /// <returns></returns> public virtual string JSONBytesToString(byte[] json) { return(StreamSerializer.JSONBytesToString(json)); }
/// <summary> /// 反序列化二进制 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="bytes"></param> /// <returns></returns> public virtual T Deserialize <T>(byte[] bytes) { return(StreamSerializer.Deserialize <T>(bytes)); }
/// <summary> /// 序列化二进制 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="obj"></param> /// <returns></returns> public virtual byte[] Serializer <T>(T obj) { return(StreamSerializer.Serializer <T>(obj)); }
public void Deserialize(FileStream s) { StreamSerializer.Deserialize(s, this); }