如下代码: 用Socket接值时候 需要为其赋长度
byte[] dataPackets = new byte[2048]; receiveLength = rtcpSocket.ReceiveFrom(dataPackets, ref remoteEndPoint);
但是接到的数组长度(receiveLength )可能没有实际设置的2048位 导致后边的数组后边全部都是0假设接到长度为1500位
请问怎样在接到数组dataPackets后,把1501-2047位全部去掉使其成为一个长度只有1500的byte数组
byte[] dataPackets = new byte[2048]; receiveLength = rtcpSocket.ReceiveFrom(dataPackets, ref remoteEndPoint);
但是接到的数组长度(receiveLength )可能没有实际设置的2048位 导致后边的数组后边全部都是0假设接到长度为1500位
请问怎样在接到数组dataPackets后,把1501-2047位全部去掉使其成为一个长度只有1500的byte数组
然后用Array.Copy(,,,,);
receiveLength = rtcpSocket.ReceiveFrom(temp, ref remoteEndPoint);
byte[] dataPackets = new byte[receiveLength];
Array.Copy(temp,dataPackets,receiveLength);
//使用dataPackets就可以了。
receiveLength = rtcpSocket.ReceiveFrom(dataPackets, ref remoteEndPoint);
byte[] dataPackets = new byte[receiveLength ];
????
if(ilen > 0)
{
byte[] dataPackets = new byte[ilen];
receiveLength = rtcpSocket.ReceiveFrom(dataPackets, ref remoteEndPoint);
}