2011-05-25 7 views
4

我有两个字符串一个数组:我如何转换的NSData为const uint8_t或得到错误,而传递的NSData通过WiFi

NSArray *sendingArray = [[NSArray alloc]initWithObjects:@"CAT",@"DOG",nil]; 

和我转换阵列的NSData:

NSData *myData = [NSKeyedArchiver archivedDataWithRootObject:sendingArray]; 

现在我需要将我的NSData(myData)转换为const uint8_t

我正在这样做的代码通过Wifi网络发送一个值的数组。

我使用下面的代码(我的字符串是“字符串”)成功发送一个字符串通过WiFi。

const uint8_t *message = (const uint8_t *)[string UTF8String]; 

    [_outStream write:bytes maxLength:len]; 

我写了下面的代码发送NSData对象,但它有错误。

代码是:

const uint8_t *bytes = (uint8_t)[myData bytes];//this line getting error. 
    [_outStream write:bytes maxLength:len]; 

我可以发送我的NSData(myData)通过而不转换它为const uint8_t上述方法?如果是的话,请给我我需要写的代码。

或任何一个可以告诉我转换的方式我NSData(myData)const uint8_t

+0

你不认为这将有助于我们看到你收到的错误? – deanWombourne 2011-05-25 12:36:13

回答

18
const uint8_t *bytes = (const uint8_t*)[myData bytes]; 
//         ^^ note the asterisk