发送wifi设备的字节时NSData太多错误的顺序

时间:2012-04-25 19:45:45

标签: ios xcode4 byte nsdata wireless

我正在尝试将一些数据发送到无线设备。我想发送的数据是一个字节数组(即Byte stuff [4])。我用串行电缆做了这个,工作正常。但对于无线版本,NSData对象将字节合并在一起。假设前四个字节是24,130,255和255.在十六进制中,这些是18,82,FF和FF。我想分别发送字节,但是当我检查字节中的内容时,字节是0xffff8218。我不想发送0x00000000格式的东西,我宁愿发送0x00,一次只发送一个字节。我如何使NSData以相反的顺序创建一个只有一个字节而不是四个字节的对象?谢谢。

还有一些代码: 这是使用GCDAyncSocket.h和.m

Byte testing[15];
NSData *stuff;

基本上加载一个字节数组然后把它放在NSData中才能发送

testing[0]=24;testing[1]=130;testing[2]=255;testing[3]=255;testing[4]=131;testing[5]=255;testing[6]=255;testing[7]=244;testing[8]=5;testing[9]=65;testing[10]=73;testing[11]=83;testing[12]=48;testing[13]=0;testing[14]=224;
stuff = [NSData dataWithBytes:&testing length:15];

当我在此之后和之前发送断点时,我发现“stuff”的第一个字节是< 0xffff8218>

1 个答案:

答案 0 :(得分:0)

NSData管理一个字节集合 - 它不知道这些字节所代表的数据类型,数据的字节顺序等。你可以从{{1使用NSData方法的对象,它为您提供-bytes,然后您可以根据需要一次发送一个字节。