我需要我的代码来做这样的事情 - 代码中的某处num
得到一个值,然后我想从文件中读取,因为字节是数字num
。
例如:如果 num 是 39382,我需要读取 39382 个字节并将它们放入 byte[] 缓冲区;
在我有这样的事情之前:
ushort num = 0;
//.... num get some value;
byte[] buffer = bRead.ReadBytes(num);
现在我必须将其更改num
为 a UInt32
,但随后ReadBytes
不起作用(因为它需要 int32)。'num' 可能超过 int32。我这样修复它:
byte[] buffer = new byte[num];
for (int j = 0; j < num; j++)
{
buffer[j] = bRead.ReadByte();
}
它有效,但我想知道这是最好的方法吗?还是有别的?