读取二进制字段内容代码

 BinaryWriter bw;
            int bufferSize = 1024;
            byte[] outbyte = new byte[bufferSize];
            long retval;
            long startIndex = 0;
            MemoryStream ms = new MemoryStream();
                       
            bw = new BinaryWriter(ms);
            startIndex = 0;
            retval = reader.GetBytes(reader.GetOrdinal("MapContent"), startIndex, outbyte, 0, bufferSize);
            while (retval == bufferSize)
            {
                bw.Write(outbyte);
                bw.Flush();
                startIndex += bufferSize;

                if (startIndex < model.MapSize)
                    retval = reader.GetBytes(reader.GetOrdinal("MapContent"), startIndex, outbyte, 0, bufferSize);
                else
                    break;
            }

            bw.Write(outbyte);
            bw.Flush();
            model.MapContent = ms.ToArray();

原文地址:https://www.cnblogs.com/xiaoko/p/1342011.html