Hen*_*man 41
数组在C#(.NET)中是固定大小的.
您必须将内容复制到新内容.
byte[] sourceArray = ...
byte[] truncArray = new byte[10];
Array.Copy(sourceArray , truncArray , truncArray.Length);
Run Code Online (Sandbox Code Playgroud)
小智 8
private static void Truncate() {
byte[] longArray = new byte[] {1,2,3,4,5,6,7,8,9,10};
Array.Resize(ref longArray, 5);//longArray = {1,2,3,4,5}
//if you like linq
byte[] shortArray = longArray.Take(5).ToArray();
}
Run Code Online (Sandbox Code Playgroud)
我通常创建一个扩展方法:
public static byte[] SubByteArray(this byte[] byteArray, int len)
{
byte[] tmp = new byte[len];
Array.Copy(byteArray, tmp, len);
return tmp;
}
Run Code Online (Sandbox Code Playgroud)
可以像这样轻松调用字节数组:
buffer.SubByteArray(len)
Run Code Online (Sandbox Code Playgroud)