public byte[] GetSendDataLenghtBytes(string dataHead,string datas)
{
var bs = Encoding.GetEncoding("GB2312").GetBytes(dataHead);
var bs2 = Encoding.GetEncoding("GB2312").GetBytes(datas);
var bytes = new byte[bs.Length + 2]; bytes[bs.Length -1] = (byte)(bs2.Length / byte.MaxValue);
bytes[bs.Length -2] = (byte)(bs2.Length % byte.MaxValue);
bs.CopyTo(bytes, bs.Length);//得到添加了长度的数组bytes var tmpDatas = Encoding.GetEncoding("GB2312").GetBytes("&" + datas + "#");
var dataBytes = new byte[bytes.Length + tmpDatas.Length];
dataBytes.CopyTo(tmpDatas, bytes.Length);
return tmpDatas;
}小弟有以上方法,目的是计算形参datas的长度,然后附加到dataHead的byte数组上然后返回。
但是写了一下,死活说我目标数组的长度不够。请检查 destIndex 和长度,请教高手大哥,我这里那里写错了?
{
var bs = Encoding.GetEncoding("GB2312").GetBytes(dataHead);
var bs2 = Encoding.GetEncoding("GB2312").GetBytes(datas);
var bytes = new byte[bs.Length + 2]; bytes[bs.Length -1] = (byte)(bs2.Length / byte.MaxValue);
bytes[bs.Length -2] = (byte)(bs2.Length % byte.MaxValue);
bs.CopyTo(bytes, bs.Length);//得到添加了长度的数组bytes var tmpDatas = Encoding.GetEncoding("GB2312").GetBytes("&" + datas + "#");
var dataBytes = new byte[bytes.Length + tmpDatas.Length];
dataBytes.CopyTo(tmpDatas, bytes.Length);
return tmpDatas;
}小弟有以上方法,目的是计算形参datas的长度,然后附加到dataHead的byte数组上然后返回。
但是写了一下,死活说我目标数组的长度不够。请检查 destIndex 和长度,请教高手大哥,我这里那里写错了?
{
var bs = Encoding.GetEncoding("GB2312").GetBytes(dataHead);
var bs2 = Encoding.GetEncoding("GB2312").GetBytes(datas);
var bytes = new byte[bs.Length + 2]; bytes[bytes.Length - 1] = (byte)(bs2.Length / byte.MaxValue);
bytes[bytes.Length - 2] = (byte)(bs2.Length % byte.MaxValue);
bs.CopyTo(bytes, 0);//得到添加了长度的数组bytes //var tmpDatas = Encoding.GetEncoding("GB2312").GetBytes("&" + datas + "#");
var dataBytes = new byte[bytes.Length + bs2.Length];
bytes.CopyTo(dataBytes, 0);
bs2.CopyTo(dataBytes, bytes.Length);
return dataBytes;
}