1 截取byte[]中一部分資料,從begin 開始,長度是 count
- (void)bytesplit2byte:(Byte[])src orc:(Byte[])orc begin:(NSInteger)begin count:(NSInteger)count{
memset(orc, 0, sizeof(char)*count);
for (NSInteger i = begin; i < begin+count; i++){
orc[i-begin] = src[i];
}
}
2 把 byte數組轉成 Int類型的資料,這 提供了一種 儲存思想
-(int) lBytesToInt:(Byte[]) byte
{
int height = 0;
NSData * testData =[NSData dataWithBytes:byte length:4];
for (int i = 0; i < [testData length]; i++)
{
if (byte[[testData length]-i] >= 0)
{
height = height + byte[[testData length]-i];
} else
{
height = height + 256 + byte[[testData length]-i];
}
height = height * 256;
}
if (byte[0] >= 0)
{
height = height + byte[0];
} else {
height = height + 256 + byte[0];
}
return height;
}
3 把 int 轉成 byte[]
int jsonlen = JsonData.length;
char *p_json = (char *)&jsonlen;
char str_json[4] = {0};
for(int i= 0 ;i < 4 ;i++)
{
str_json[i] = *p_json;
p_json ++;
}
具體使用地方,例如,自訂socket協議。需要傳入 資料大小,需要將 int的長度,轉成byte[] 這樣放入對應協議的位元組中才可以