我用socket从服务器接过来数据 一包数据有4096条
但是里面有很多条信息 buf[0] = 0xFF;
buf[1] = 0xFE;
这是一条数据的开头 这是
buf[98] = 0xFF;
buf[99] = 0xFF;一条数据的结尾 然后我要把每条数据都单独的提取出来
应该怎么弄?
但是里面有很多条信息 buf[0] = 0xFF;
buf[1] = 0xFE;
这是一条数据的开头 这是
buf[98] = 0xFF;
buf[99] = 0xFF;一条数据的结尾 然后我要把每条数据都单独的提取出来
应该怎么弄?
0xFF 就是255
对你的buf进行逐个查找,当找到起始位置后,标记起始位置,然后找到结束位置后标记结束位置。
依据每个信息的长度定义数据,将该条信息对应的数据复制到定义的数组中去。
依此知道buf结束。
代码我就不写了。
buf[1] = 0xFE;尾是
buf[98] = 0xFF;
buf[99] = 0xFF;是不一样的代码要怎么写啊?
List<Byte> bts=null;
for(int i=0;i<buf.Length;i++){
if(buf[i]==0xFE){
bts=new List<Byte>();
}else if(buf[i]==oxFF){
if(bts!=null)msgs.Add(bts.ToArray());
}else{
bts.Add(buf[i]);
}
int i =0;
while(i<4096)
{
if(buf[i] == 0xFF && buf[i+1] == 0xFE && buf[i+98] == 0xFF && buf[i+99] == 0xFF)
{
//取数
....i+=100;
}
else
{
i++;
}
}