C# 字节[]缓冲区或引用/指针?在C中#
我有一个原始缓冲区,我需要做另外3个,头部总是前8个字节,身体总是从字节8到?那么脚是从哪来的?直到文件的末尾 我如何从已经存在的缓冲区中创建缓冲区,以便填充身体和脚。另外,如何创建头以使用前16个字节。我假设我没有使用ref或指针 可以使用Array.Copy()将元素从一个数组复制到另一个数组。可以指定源和目标的起点和终点位置C# 字节[]缓冲区或引用/指针?在C中#,c#,binary,bytearray,C#,Binary,Bytearray,我有一个原始缓冲区,我需要做另外3个,头部总是前8个字节,身体总是从字节8到?那么脚是从哪来的?直到文件的末尾 我如何从已经存在的缓冲区中创建缓冲区,以便填充身体和脚。另外,如何创建头以使用前16个字节。我假设我没有使用ref或指针 可以使用Array.Copy()将元素从一个数组复制到另一个数组。可以指定源和目标的起点和终点位置 您可能还想签出。尝试使用,与数组操作相比,这将为基本类型提供更快的性能。(为什么?我不知道,但MSDN)您可以使用MemoryStream中的二进制读取器 Syst
您可能还想签出。尝试使用,与数组操作相比,这将为基本类型提供更快的性能。(为什么?我不知道,但MSDN)您可以使用MemoryStream中的二进制读取器
System.IO.MemoryStream stm = new System.IO.MemoryStream( buf, 0, buf.Length );
System.IO.BinaryReader rdr = new System.IO.BinaryReader( stm );
int bodyLen = xxx;
byte[] head = rdr.ReadBytes(8)
byte[] body = rdr.ReadBytes(bodyLen );
byte[] foot = rdr.ReadBytes(buf.Length-bodylen-8);
看一看