NSMutableData オブジェクトにバイトを設定するにはどうすればよいですか? 私は次のことを試しました:
-(void)setFirstValue:(Byte)v{
[mValues mutableBytes][0] = v;
}
しかし、それはコンパイラを大声で叫びます...
NSMutableData オブジェクトにバイトを設定するにはどうすればよいですか? 私は次のことを試しました:
-(void)setFirstValue:(Byte)v{
[mValues mutableBytes][0] = v;
}
しかし、それはコンパイラを大声で叫びます...
しかし、それはコンパイラを大声で叫びます...
それは をmutableBytes*
返すからvoid*
です。char*
問題を解決するには、次のようにキャストします。
((char*)[mValues mutableBytes])[0] = v;
使用することもできますreplaceBytesInRange:withBytes:
char buf[1];
buf[0] = v;
[mValues replaceBytesInRange:NSMakeRange(0, 1) withBytes:buf];
配列にキャストします
NSMutableData * rawData = [[NSMutableData alloc] initWithData:data];
NSMutableArray * networkBuffer = [[NSMutableArray alloc]init];
const uint8_t *bytes = [self.rawData bytes];
//cycle through data and place it in the network buffer
for (int i =0; i < [data length]; i++)
{
[networkBuffer addObject:[NSString stringWithFormat:@"%02X", bytes[i]]];
}
もちろん、networkBuffer (nsmutablearray) 内のオブジェクトを調整することもできます。