我试图通过将部分读入字节数组来将内存流分成块,但我认为我有一些根本性的错误。我可以读取第一个块,但是当我尝试读取内存流的其余部分时,即使有更多字节要读取,我也会使索引超出范围。似乎问题在于接收字节缓冲区的大小需要与内存流一样大。我需要将其转换为块,因为代码位于 Web 服务中。
任何人都知道这段代码有什么问题
fb.buffer 是 MemoryStream
long bytesLeft = fb.Buffer.Length;
fb.Buffer.Position = 0;
int offset =0;
int BUFF_SIZE = 8196;
while (bytesLeft > 0)
{
byte[] fs = new byte[BUFF_SIZE];
fb.Buffer.Read(fs, offset, BUFF_SIZE);
offset += BUFF_SIZE;
bytesLeft -= BUFF_SIZE;
}