zoukankan      html  css  js  c++  java
  • C#读取二进制字节流

    1、以下方法将一个对象序列化为可以在数据库中存储的字节数组
    private byte[] getByteData(SupplementData data)
      {
       BinaryFormatter serializer =new BinaryFormatter();
       MemoryStream memStream =new MemoryStream();
       serializer.Serialize(memStream,data);
       int length = (int)memStream.Length;
       byte[] buffer = new byte[length];
       memStream.Position = 0;
       memStream.Read(buffer,0,length);
       return buffer;
      }
    调用方法得到字节数组后给参数赋值:
    oCommand.Parameters[5].Value =getByteData(OldData);
    2、以上是关于序列化后的字节数组的存储,那读取呢?

      private SupplementData GetHistoryData(string Track_UUID)
      {
       //根据ID得到一笔记录,GetTable是本人系统中的特定方法
       DataTable table = GetTable("LIC_DATA_TRACK","TRACK_UUID",Track_UUID,out sErrorMsg);

       BinaryFormatter deserializer =new BinaryFormatter();
       MemoryStream stream =new MemoryStream();
       //将得到的记录中的某个Bolb类型的数据读出来存储到数据流中
       byte[] objBytes =(byte[])table.Rows[0]["HistoryData"];
     
      stream.Write(objBytes,0,objBytes.Length);
       stream.Position = 0;
       //字节流反序列化后,返回对象SupplementData(本人定义的一个对象)
       return (SupplementData)deserializer.Deserialize(stream);
      }


  • 相关阅读:
    c#遍历一个对象中所有的属性和值
    Redis和Memchaed缓存数据查询
    ASP.NET结合Redis实现分布式缓存
    C#使用Spire.Doc Word for .Net读写Word
    DataTable序列化
    ASP.NET网站不能在VS中调试
    winform窗体运行时的大小和设计时不一致
    ajax请求aspx.cs后台方法
    jQuery判断鼠标滚动方向
    使用MagickNet编辑图片
  • 原文地址:https://www.cnblogs.com/Bluer/p/983224.html
Copyright © 2011-2022 走看看