由于某种原因,BeginReceive的字节数组输出先填充null,然后填充数据。
BeginReceive:
AsyncResult = connectSocket.BeginReceive(RecvBuffer2,
0, RecvBuffer2.Length,
SocketFlags.None,
OnDataRecvCallback, null);
字节数组声明:
public static byte[] RecvBuffer2 = new byte[9999];
如何删除空值并保留其余数据?
最佳答案
应该可以在LINQ上使用。未经测试,因为我现在没有Visual Studio,但是应该是这样的:
var usefulBuffer = RecvBuffer2.SkipWhile(x => x == 0).ToArray()