zoukankan      html  css  js  c++  java
  • 对像转成 和 byte 互转类库方法

    using System;
    using System.IO;
    using System.Runtime.Serialization;
    using System.Runtime.Serialization.Formatters.Binary;
    namespace Dscf.Global.Utils
    {
        public class ObjectUtils
        {
            /// <summary>
            /// 对像转成 byte 数组
            /// </summary>
            /// <param name="obj"></param>
            /// <returns></returns>
            public static byte[] ObjectToByte(Object obj)
            {
                using (MemoryStream ms = new MemoryStream())
                {
                    IFormatter formatter = new BinaryFormatter();
                    formatter.Serialize(ms, obj);
                    return ms.GetBuffer();
                }
            }
            /// <summary>
            /// 把序列化的数组转成对像
            /// </summary>
            /// <param name="bytes"></param>
            /// <returns></returns>
            public static Object ByteToObject(byte[] bytes)
            {
                using (MemoryStream ms = new MemoryStream(bytes))
                {
                    IFormatter formatter = new BinaryFormatter();
                    Object obj = formatter.Deserialize(ms);
                    return obj;
                }
            }
            /// <summary>
            /// 克隆一个对像
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <param name="t"></param>
            /// <returns></returns>
            public static T CloneObject<T>(T t)
            {
                byte[] bb = ObjectToByte(t);
                object obj= ByteToObject(bb);
                return (T)obj;
            }
        }
    }
  • 相关阅读:
    我和计算机
    十四周学习记录
    十五周个人作业
    怎样成为一个高手
    C语言第0次作业
    C语言博客作业03函数
    C博客作业01分支、顺序结构
    C语言博客作业02循环结构
    Rails后台,Firefox Addons前端,JS的AJAX调用
    Ruby 三元一次线性方程组
  • 原文地址:https://www.cnblogs.com/dullbaby/p/4838037.html
Copyright © 2011-2022 走看看