我觉得问得很傻,但是...
使用 C#/.NET 我有一个流,我编写了自己的扩展函数来读取短(或内置字节)。
我可以使用什么东西来创建一个 X 长度的数组(在我的示例中为 16)并返回一个字节数组?否则抛出异常?ReadByte 是这样做的,并且是内置的。在 .NET 框架中应该有类似我所要求的内容
我可以使用什么东西来创建一个 X 长度的数组(在我的示例中为 16)并返回一个字节数组?
对于字节数据,您只需调用Stream.Read:
byte[] values = new byte[16];
int read = theStream.Read(values, 0, 16);
// Make sure you read all 16...
或者,您可以使用BinaryReader.ReadBytes:
byte[] values = theStream.ReadBytes(16);
如果你想处理短数据,我会为BinaryReader创建一个扩展方法:
public static short[] ReadInt16Array(this BinaryReader reader, int elementsToRead)
{
short[] results = new short[elementsToRead];
for (int i=0;i<elementsToRead;++i)
results[i] = reader.ReadInt16();
return results;
}