zoukankan      html  css  js  c++  java
  • 字节转化为结构体BytesToStruct

    //结构体转字节数组
        public byte[] StructToBytes (object structObj)
        {
            
            int size = Marshal.SizeOf (structObj);//获取结构体的大小
            IntPtr buffer = Marshal.AllocHGlobal (size);//分配内存
            try {
                Marshal.StructureToPtr (structObj, buffer, false);//将数据从托管对象封装到非托管内容并不销毁旧物体
                byte[] bytes = new byte[size];
                Marshal.Copy (buffer, bytes, 0, size);//将数据从非托管内存复制到数组内
                return   bytes;
            } finally {
                Marshal.FreeHGlobal (buffer);//释放内存
            }
        }
    //字节转结构体 public object BytesToStruct (byte[] bytes, Type strcutType) { int size = Marshal.SizeOf (strcutType); IntPtr buffer = Marshal.AllocHGlobal (size); try { Marshal.Copy (bytes, 0, buffer, size); return Marshal.PtrToStructure (buffer, strcutType); } finally { Marshal.FreeHGlobal (buffer); } }
  • 相关阅读:
    drf框架 APView的请求生命周期
    web API接口、restful规范
    vue项目安装插件配置
    vue项目、路由
    day67
    vue组件
    day66
    HDFS(Hadoop Distribute File System)
    JVM运行优化学习笔记
    ELK(检索)
  • 原文地址:https://www.cnblogs.com/ChangTan/p/9950355.html
Copyright © 2011-2022 走看看